CWMFoundation 意为 Charlie.Wang Foundation Mini(迷你版)
是作者工作中为方便代码编写,逐渐整理归档的一些代码集。
在原有CWFoundation的基础上,去除了大量窗体上的控件,只留下一个Delphi Pas文件的轻量级类。
Algorithm是用来存放算法的类。
//*********************************** //***** CWMFoundation Algorithm ****** //*********************************** {$REGION ' CWMFoundation Algorithm Implementation '} function TCWAlgorithm.SortWithBuddle(_array: TARR_INT):TARR_INT; var arrLength,i,j,tmp_swap:Integer; begin try arrLength := Length(_array); for i:=0 to arrLength-1 do begin for j:=i+1 to arrLength-1 do begin if _array[i]>=_array[j] then begin tmp_swap:=_array[i]; _array[i]:=_array[j]; _array[j]:=tmp_swap; end; end; end; finally Result := _array; end; end; function TCWAlgorithm.SortWithShell(_array: TARR_INT):TARR_INT; var arrLength,i,j,k,tmp_swap:Integer; begin try arrLength := Length(_array); k:=(arrLength div 2); while k>0 do begin Application.ProcessMessages(); for j:=k to arrLength-1 do begin tmp_swap:=_array[j]; i:=j-k; while (i>=0) and (_array[i]>=tmp_swap) do begin _array[i+k]:=_array[i]; i:=i-k; end; _array[i+k]:=tmp_swap; end; k:=k div 2; end; finally Result := _array; end; end; {$ENDREGION}