L liurui525 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-29 #1 例如有一个文本文件test.txt 里面有若干个单词: Year Month Day 写一个程序所有单词按字典顺序排序 输出到一个文本文件result.txt中.
L lisongmagic Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-29 #2 var s: tstrings; begin s:= tstringList.create; try s.loadFormfile('test.txt'); s.sort;//已被delphi封装的快速排序 s.saveToFile('result.txt'); finally s.free; end; end; 冒泡?n平方时间复杂度,学习可以,实践谁用?你用?
var s: tstrings; begin s:= tstringList.create; try s.loadFormfile('test.txt'); s.sort;//已被delphi封装的快速排序 s.saveToFile('result.txt'); finally s.free; end; end; 冒泡?n平方时间复杂度,学习可以,实践谁用?你用?
文 文生 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-30 #3 比如: C语言的冒泡法 void main() { int a[7]={90,12,6,15,3,16,10}; int i,temp; for(i=1;i<=6;i++) /*m个数字需要m-1轮排序*/ { int j; int ok=True; for(j=0;j<=7-i;j++)/*第i轮排序需要比较m-i次*/ { if(a[j]>a[j+1]) { ok=False; temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } if(ok==True) /*若该轮排序没有发生任何交换,则说明已经排好序了*/ break; } } 看懂了就去转换成PASCAL语言就可以了
比如: C语言的冒泡法 void main() { int a[7]={90,12,6,15,3,16,10}; int i,temp; for(i=1;i<=6;i++) /*m个数字需要m-1轮排序*/ { int j; int ok=True; for(j=0;j<=7-i;j++)/*第i轮排序需要比较m-i次*/ { if(a[j]>a[j+1]) { ok=False; temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } if(ok==True) /*若该轮排序没有发生任何交换,则说明已经排好序了*/ break; } } 看懂了就去转换成PASCAL语言就可以了
文 文生 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-30 #4 Delphi的 procedure Sort(var A:array of Integer); var I,J,T:Integer; begin for I:=High(A)downto Low(A) do for J:=Low(A)to High(A)-1 do if A[J]>A[J+1] then begin T:=A[J]; A[J]:=A[J+1]; A[J+1]:=T; end; end;
Delphi的 procedure Sort(var A:array of Integer); var I,J,T:Integer; begin for I:=High(A)downto Low(A) do for J:=Low(A)to High(A)-1 do if A[J]>A[J+1] then begin T:=A[J]; A[J]:=A[J+1]; A[J+1]:=T; end; end;
文 文生 Unregistered / Unconfirmed GUEST, unregistred user! 2007-03-30 #5 你上面的问题用TStringList,和ListtView都可以,实现排序,