LeetCode - 344. Reverse String(Two Pointers, String ,Recursion)
質問する
反転文字列の関数を作成します.入力文字列は、文字sの配列として提供されます.
この操作を実行するには、O(1)追加のメモリを使用して入力配列を変更する必要があります.
Write a function that reverses a string. The input string is given as an array of characters s.
You must do this by modifying the input array in-place with O(1) extra memory.
Example 1:
Input: s = ["h","e","l","l","o"]
Output: ["o","l","l","e","h"]
Example 2:
Input: s = ["H","a","n","n","a","h"]
Output: ["h","a","n","n","a","H"]
https://leetcode.com/problems/reverse-string/
に答える
これはJavaです.デュアルポインタを使用します.iは配列の先頭であり,jは配列の長さである. i、j-1-iの位置の値を変更します.
ex)i=0の場合、最初の値と最後の値が変更されます.
反転文字列の関数を作成します.入力文字列は、文字sの配列として提供されます.
この操作を実行するには、O(1)追加のメモリを使用して入力配列を変更する必要があります.
Write a function that reverses a string. The input string is given as an array of characters s.
You must do this by modifying the input array in-place with O(1) extra memory.
Example 1:
Input: s = ["h","e","l","l","o"]
Output: ["o","l","l","e","h"]
Example 2:
Input: s = ["H","a","n","n","a","h"]
Output: ["h","a","n","n","a","H"]
https://leetcode.com/problems/reverse-string/
に答える
これはJavaです.
ex)i=0の場合、最初の値と最後の値が変更されます.
class Solution {
public void reverseString(char[] s) {
char tmp;
int j = s.length;
for(int i=0;i<j/2;i++){
tmp = s[i];
s[i] = s[j-1-i];
s[j-1-i]=tmp;
}
}
}
Reference
この問題について(LeetCode - 344. Reverse String(Two Pointers, String ,Recursion)), 我々は、より多くの情報をここで見つけました https://velog.io/@yamamamo/LeetCode-344.-Reverse-StringTwo-Pointers-String-Recursionテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol