「DA:sort」の版間の差分
ナビゲーションに移動
検索に移動
(→バブルソート) |
編集の要約なし |
||
| 17行目: | 17行目: | ||
print('整列前:', numbers) | print('整列前:', numbers) | ||
bubblesort(numbers) | bubblesort(numbers) | ||
print('整列後:', numbers) | |||
= 挿入ソート = | |||
import random | |||
def insertionsort(numbers): | |||
for i in range(1, len(numbers)): | |||
x = numbers[i] | |||
for j in range(i, 0, -1): | |||
if numbers[j-1] > x: | |||
numbers[j] = numbers[j-1] | |||
numbers[j-1] = x | |||
else: | |||
break | |||
return numbers | |||
numbers = [random.randint(1,10) for i in range(10)] | |||
print('整列前:', numbers) | |||
insertionsort(numbers) | |||
print('整列後:', numbers) | print('整列後:', numbers) | ||
2025年4月24日 (木) 03:23時点における版
バブルソート
import random
def bubblesort(numbers):
flag = True
while flag:
flag = False
for i in range(len(numbers) - 1):
if numbers[i] > numbers[i+1]:
### ここを埋める ###
flag = True
return numbers
numbers = [random.randint(1,30) for i in range(30)]
print('整列前:', numbers)
bubblesort(numbers)
print('整列後:', numbers)
挿入ソート
import random
def insertionsort(numbers):
for i in range(1, len(numbers)):
x = numbers[i]
for j in range(i, 0, -1):
if numbers[j-1] > x:
numbers[j] = numbers[j-1]
numbers[j-1] = x
else:
break
return numbers
numbers = [random.randint(1,10) for i in range(10)]
print('整列前:', numbers)
insertionsort(numbers)
print('整列後:', numbers)