DA:basicdatastructure
ナビゲーションに移動
検索に移動
Python を用いて連結リスト等の基本的なデータ構造を実装するコード集です.
連結リスト 基本構成と要素の追加
head = [None, None]
# リストに要素を追加する・リストの内容を表示する
def listshow():
cur = head[1]
while cur is not None:
print(cur[0])
cur = cur[1]
def listappend(n, v):
cur = head
for i in range(n):
if cur is None:
print('リストの長さが n よりも小さいため,操作を実行できません')
return
cur = cur[1]
tmp = [v, cur[1]]
cur[1] = tmp
print('リストの %i 番目に %i を追加しました' % (n, v))
print('初期状態(何も表示されない)')
listshow()
print('先頭(0番目)に5を追加')
listappend(0, 5)
listshow()
print('先頭(0番目)に1を追加')
listappend(0, 1)
listshow()
print('2番目に30を追加')
listappend(2, 30)
listshow()
print('1番目に7を追加')
listappend(1, 7)
listshow()
print('10番目に7を追加(リストの長さが10未満なので失敗する)')
listappend(10, 7)
listshow()
バケットソート
# ソート対象の整数のリストをランダムに生成
import random
numbers = [random.randint(0, 99) for i in range (50)]
# バケットソートを実行する部分を完成させてください.バケットの名前をTにしてください.
# 並べ替えたものを表示
for i in range(100):
for j in range(T[i]):
print(i)