- Date : 2021.10.24(일)
- Time : 25분
- Given a string s, reverse the order of characters in each word within a sentence while still preserving whitespace and initial word order.
- 1 <= s.length <= 5 * 10^4
- s contains printable ASCII characters.
- s does not contain any leading or trailing spaces.
- There is at least one word in s.
- All the words in s are separated by a single space.
- Input: s = "Let's take LeetCode contest"
- Output: "s'teL ekat edoCteeL tsetnoc"
def reverseWord(self,word):
end = len(word)-1
answer = ""
while(end >= 0):
answer += word[end]
end = end-1
return answer
def reverseWords(self, s: str) -> str:
answer = ""
word = ""
i = 0
while(i <= len(s)-1):
if (s[i] != " "):
word += s[i]
else:
answer += self.reverseWord(word) + " "
word = ""
i = i+1
answer += self.reverseWord(word)
return answer
: 이 문제는 띄어쓰기를 기준으로 문장을 뒤집는 문제였다. 그래서 일단 while문으로 진행하였다. 근데 for문으로 진행해도 상관 없을 것 같다. 나는 띄어쓰기를 검사해서 띄어쓰기를 만나기전에는 word에 단어를 쌓았다. 그리고 띄어쓰기를 만나면 지금까지 word에 모아 둔 단어를 또 다른 함수를 만들어서 뒤집어 주었다.