21.4.28
14918 ワード
アルゴリズム17日目
質問です。
1.質問
検索前の文字が同じかどうか:接頭辞検索の問題2.方法
3.書名結果
4.コード
def get_prefix(strs):
if len(strs) == 0:
return ''
# 먼저 해당 없는 길이 0인 배열 제외
strs.sort()
# 정렬
shortest = strs[0]
# 기준점 잡기
prefix = ''
# return 할 완성작 잡기
for i in range(len(shortest)):
# Range index
if strs[len(strs)-1][i] == shortest[i]:
prefix += strs[len(strs)-1][i]
# 만일 값이 같다면 프레픽스에 하나씩 글자 추가
else:
break
# 없으면 브레이크 걸기
return prefix
print(get_prefix(['start', 'stair', 'step']))
困難この部分はよく知られていない.後で再試行質問です。
1.質問
2.アプローチ
3.書名結果
4.コード
def maxSubArray(nums):
for i in range(1, len(nums)):
# 1부터 len(num)까지
if nums[i-1] > 0:
# 만일 0보다 큰 요소가 있다면
nums[i] += nums[i-1]
# 다음 요소와 더해준다.
return max(nums)
# 그 중 가장 큰 값
print(maxSubArray([-2,1,-3,4,-1,2,1,-5,4]))
各種ソート参照リンク
コメントブログ
質問です。
1.質問
ソートの選択
2.正解
def selectionSort(nums):
for i in range(len(nums)-1):
min_index = i
for j in range(i+1, len(nums)):
if nums[j] < nums[min_index]:
min_index = j
nums[i], nums[min_index] = nums[min_index], nums[i]
return nums
print(selectionSort([2,4,7,5]))
フィボナッチのように少し公式に似ています.よく知っておきましょう.質問です。
1.質問
泡の位置合わせ選択ソートとは逆に、for loopをネストする必要があります
2.ヒント
3.正解
def bubbleSort(arr):
for i in range(len(arr)-1, 0, -1):
for j in range(i):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
print(bubbleSort([2, 1, 4, 6, 8, 3]))
質問です。
1.質問
さいきかんすう
2.近接
3.正解
def reverseString(str):
result = []
for i in range(len(str)):
result.append(str[len(str) - (i+1)])
result = ''.join(result)
return result
print(reverseString('hello'))
コメントリンクReference
この問題について(21.4.28), 我々は、より多くの情報をここで見つけました https://velog.io/@sinichy7/21.4.28알고리즘テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol