知识大全 极快的正整数排序函数
Posted 函数
篇首语:人生处万类,知识最为贤。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 极快的正整数排序函数相关的知识,希望对你有一定的参考价值。
实现原理 对比二进制位
unit Unit ;
interface
uses Windows Messages SysUtils Variants Classes Graphics Controls Forms Dialogs StdCtrls;
type TForm = class(TForm) Button : TButton; Memo : TMemo; procedure Button Click(Sender: TObject); procedure FormCreate(Sender: TObject); end;
var Form : TForm ;
implementation
$R * dfm
type TIntArr = array of Integer;
极快的正整数排序函数procedure IntSort(arr:TIntArr; low:Integer= ; high:Integer= ; k:Cardinal=$ ; c:Cardinal= );var i j x: Integer;begin if high = then high := Length(arr) ; i := low; j := high; while (i < j) do begin while (arr[j] and k <> ) and (i < j) do Dec(j); while (arr[i] and k = ) and (i < j) do Inc(i); if i < j then begin x := arr[j]; arr[j] := arr[i]; arr[i] := x; end else begin if arr[j] and k <> then Dec(i) else Inc(j); Break; end; end; if k > c then begin if low < i then IntSort(arr low i k div ); if j < high then IntSort(arr j high k div ); end;end;
测试procedure TForm Button Click(Sender: TObject);var MyArr: TIntArr; i: Integer; t: Int ;begin SetLength(MyArr MAXWORD); for i := Low(MyArr) to High(MyArr) do MyArr[i] := Random(MaxInt); t := GetTickCount; IntSort(MyArr); //调用排序函数 Text := IntToStr(GetTickCount t);
Memo Clear; for i := to Length(MyArr) do begin if i mod = then Memo Lines Add(IntToStr(MyArr[i])); end;end;
cha138/Article/program/Delphi/201311/8435相关参考
Asp常用通用函数之生成时间的整数 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 函数名GetM
这篇文章介绍了js函数排序的代码有需要的朋友可以参考一下 复制代码代码如下:varas=[];assort();//这个排序是按照字典排序//自定义按照数字排序functionsortByN
Oracle聚集函数排序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 对于按照自定义聚集函数连
知识大全 PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
PHP冒泡排序二分查找顺序查找二维数组排序算法函数的详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
PHP数组排序函数 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!cha138/Artic
知识大全 已知abc为正整数,二次函数y=ax²+bx+c,当-2≤x≤1时,y的 最大值为7,最小值为-1,求二次函数的解
已知abc为正整数,二次函数y=ax²+bx+c,当-2≤x≤1时,y的最大值为7,最小值为-1,求二次函数的解因为abc都是正整数(这个是个关键条件,在后续分析和排除中会经常使用,我将这个条件记为"
知识大全 求助~~程序设计:输入一个正整数n,计算1到n的和,定义和调用求和函数,返回值为int型.
求助~~程序设计:输入一个正整数n,计算1到n的和,定义和调用求和函数,返回值为int型.#include<stdio.h>intsum(intn)inti,s=0;for(i=1;i&l
PHP数组排序函数合集以及它们之间的联系分析 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 下边
()BuildHeap和Heapify函数的实现 因为构造初始堆必须使用到调整堆的操作先讨论Heapify的实现 ①Heapify函数思想方法 每趟排序开始前R[li]是以R[]为根的堆在R
希尔排序(ShellSort)是插入排序的一种因DLShell于年提出而得名 希尔排序基本思想 基本思想 先取一个小于n的整数d作为第一个增量把文件的全部记录分成d个组所有距离为dl的倍数的