希尔排序 12345678910111213141516171819202122232425void shell(vector<int>& nums){ int size = nums.size(); int h = 1; while (h < (size / 3)) { h = 3 * h + 1; } while (h >= 1) { for (int i = h; i < size; i++) { for (int j = i; j >= h && nums[j] < nums[j - h]; j -= h) { swap(nums, j, j - h); } for (int k = 0; k < nums.size(); k++) cout << nums[k] << " "; cout << endl; } h /= 3; }} 京东面试题2017年: 对关键字{10,20,8,25,35,6,18,30,5,15,28}序列进行希尔排序,取增量d =5时,排序结果为() 1234A. {6,18,8,5,15,10,20,30,25,35,28}B. {10,18,8,5,15,6,20,30,25,35,28}C. {10,20,8,5,15,6,18,30,25,35,28}D. {10,20,30,5,8,6,15,18,25,28,35} 数据结构和算法 算法 排序 笔记 比较排序 本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处! 基数排序 上一篇 归并排序 下一篇