| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1447 人关注过本帖
标题:[求助]怎么在这个希尔排序中加入计数器啊???
取消只看楼主 加入收藏
jasonxie
Rank: 1
等 级:新手上路
威 望:2
帖 子:225
专家分:0
注 册:2007-3-19
收藏
 问题点数:0 回复次数:0 
[求助]怎么在这个希尔排序中加入计数器啊???

我写了一个希尔排序,然后想插入两个计数器对它的比较次数和移动次数进行记数,不知道该加在哪里?我加后的结果跟预期不一样。请问到底加在哪里啊?谢谢了

public static void shellSort(int[] data, int len)
{
int judgeTime = 0; //比较次数
int moveTime = 0; //移动次数

for (int d = len / 2; d > 0; d /= 2) //增量设置,将数据分组
{
for (int m = 0; m < d; m++) //对每个分组排序
{

for (int i = m + d; i < len; i += d) //每个分组的第i个元素,和前面所有元素进行比较
{

int j = i - d;
while (j >= 0 && data[i] < data[j])
{
data[j + d] = data[j]; //符合条件时,将数据后移一个位置
j -= d;

}
data[j + d] = data[i]; //找到正确的位置,插入

}
}

}
}

请问这2个计数器应该放在哪里啊?再次谢谢了

搜索更多相关主题的帖子: 希尔 计数器 int len 
2007-06-12 22:47
快速回复:[求助]怎么在这个希尔排序中加入计数器啊???
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040056 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved