【自作】 プログラミング 【してみた】

ac8aaa8b :Anonymous 2011-04-22 22:32
コムソートって簡単だね。

1 #!/usr/bin/python
2
3 DATA = [7,3,5,8,2,4,6,9,1,0]
4 print DATA
5
6 n = len(DATA)
7 h = int(n / 1.3)
8 if h == 9 or h == 10:
9 h = 11
10 while True:
11 complete = True
12 for i in range(n-h):
13 if DATA[i] > DATA[i+h]:
14 x = DATA[i]
15 y = DATA[i+h]
16 DATA[i] = y
17 DATA[i+h] = x
18 complete = False
19 if h == 1:
20 if complete:
21 break
22 else:
23 h = int(h / 1.3)
24 print DATA

これだと数値ソートしかできないけど、12行めを文字列比較できるようにすればふつーなsortコマンド作れるはず。
Powered by shinGETsu.