插入排序用指针和数组实现效率,该怎么解决

插入排序用指针和数组实现效率1、insert_sort(int *array, int size)2、insert_sort(int *beg, int *end)

插入排序用指针和数组实现效率
1、insert_sort(int *array, int size);
2、insert_sort(int *beg, int *end);
函数内部都差不多了,只是1中用整数的地方在2中是指针
用了30万条数据,1大概用了160秒,2大概用了127妙,两种实现方式差了这么多,数组访问==指针方式,多了没多少,时间上怎么差这么多?

[解决办法]
直接使用变量 先找到变量的位置,然后读取数据,

使用指针直接指向访问的数据

因为指针直接指向需访问的数据,不必再通过其它计算来进行间接访问。

比如二维数组,想要访问其中的成员计算机必须先做一次乘法运算和一次加法运算,而设计适当的指针访问时就完全不必做这些操作。

指针是对汇编语言里经常采用的寻址方式的模拟,它使得高级语言也能用类似汇编语言的手段来对数据进行处理,直接、简单,从而大大提高处理效率。

不过这个直接、简单是对机器而言,对人来说这不是我们日常的思维方式,初学者入门有一点难度。
[解决办法]
指针作 + / - 法很慢,估计 第二个直接传入的是数组的首尾指针