当前位置: 首页 > news >正文

ps做的网站如何转入dw设计网站接单

ps做的网站如何转入dw,设计网站接单,成都网站建设 四川冠辰网站建设,傻瓜式免费自助建站系统这次#xff0c;我们来讲数据结构的排序的直接插入。 一#xff1a;排序的思想#xff1a;把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中#xff0c;直到所有的记录插入完为止#xff0c;得到一个新的有序序列 相当于#xff0c;我们打牌如上图…这次我们来讲数据结构的排序的直接插入。 一排序的思想把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中直到所有的记录插入完为止得到一个新的有序序列 相当于我们打牌如上图时我们一般都会使用直接插入排序的方法。 即在3和9直接插入对吧。 同样我们这里的直接排序也是按这种方法来思考。 那么我们先来上它的动图来方便我们更清楚。 步骤讲解升序 1.一开始的时候当第一个的时候它肯定是有序的所以我们从第二个数开始插入并比较。 2.先把第二个数用临时变量存起来再去比较如果它比前面对比数还要小就将前面对比数挪到后面临时变量再去跟更前面的数依次比较。 3.如果临时变量大于对比那个数就插入到对比数的后面。 4.循环数据向前插入进去直到全部的数都插到正确的位置。 void InsertSort(int* a, int n) {//整个for (int i 1; i n; i){//单一个int end i - 1;int temp a[i];while (end 0){if (a[end] temp) //如果对比数大于存入临时的就对比数往后挪{a[end 1] a[end];end--;}else //如果对比数小于存入临时的就跳出循环{break;}}a[end 1] temp; //在对比数的后面插入数}} 直接插入排序的特性总结 1. 元素集合越接近有序直接插入排序算法的时间效率越高 就比如是 你每次插入是都比前面那个数大那么你是不是就不需要挪动数据了 假设你有n个数据按照上面的情况你执行的次数就是n-1,这样效率是不是就高了。 此时的最好时间复杂度O(N)。 2. 那么最坏的情况呢 就是逆序。这样你每次插入的时侯都是要跟前面的对比数挪动 此时的 时间复杂度O(N^2)。   3. 空间复杂度O(1)它是一种稳定的排序算法   4. 稳定性稳定   优化排序---希尔排序 上面我们已经知道插入排序的时间复杂度O(N^2). 那么有什么办法使他们的效率更高一点呢 这里大佬们提出了希尔排序的方法。 思路 1.用间隔为gap的变量分别对每组数插入 2.预排序它的目标就是接近有序 3.最后再直接插入 这样的方法会大大提高效率。 比如说你看按照下面的话分组 这一趟排序完是不是就看起来比没有排时变有序了。  这样一趟趟地回来到gap1时就只需挪隔壁的数字比较所以大大提高了直接插入的效率。 比较 我们知道上面直接排序 直接插入完全逆序时 它比较执行的次数123……n-1次 根据等差数列的公式n^2/2-n/2; 那么我们使用希尔排序用gap分组 gapgap/4时 分成两部分 那么它的次数12……n/2-112……n/2-1 那么计算得到n^2/4-n/2; 相比你看是不是就提高了效率。   gapgap/2 假设为n则分成3部分 执行的次数123……n-1*3 计算得 n^2/6-n/2; 类比得当我们分的部分越多执行的次数会减少。 有以下规律 当分成部分k执行次数 1/k*n^2/2-n/2 当gap越小跳得越慢越有序当gap越大跳得越慢越无序。 那么我们发现当gap很小时它的次数本来是n^2/2-n/2但是我们考虑到之前我们已经经过预排序了已经很接近有序了所以按照最好的情况来算。 总结 希尔排序法的基本思想是先选定一个整数把待排序文件中所有记录分成个组所有距离为的记录分在同一组内并对每一组内的记录进行排序。然后取重复上述分组和排序的工作。当到达1时所有记录在统一组内排好序。  希尔排序的特性总结 1. 希尔排序是对直接插入排序的优化。 2. 当gap 1时都是预排序目的是让数组更接近于有序。当gap 1时数组已经接近有序的了这样就会很快。这样整体而言可以达到优化的效果。我们实现后可以进行性能测试的对比。 3. 希尔排序的时间复杂度不好计算因为gap的取值方法很多导致很难去计算因此在好些树中给出的希尔排序的时间复杂度都不固定 根据大佬们的推算一般都是gap(gap/31常用   int gap n;while (gap 1){gap gap / 3 1;for (int i 0; i gap; i){for (int i 0; i n - gap; i gap){//单个int end i;int temp a[i gap];while (end 0){if (a[end] temp){a[end gap] a[end];end - gap;}else{break;}}a[end gap] temp;}}}} 好了选择排序和希尔排序就写完了。 最后学路漫漫永无止境一点一点进步吧
http://www.w-s-a.com/news/5029/

相关文章:

  • 网站如何做排名网站建设项目的工作分解
  • 洛阳网络建站公司网站开发主流语言
  • 广州各区正在进一步优化以下措施seo值是什么意思
  • 滨州建网站公司京东云 wordpress
  • 网站视频背景怎么做免费的网络推广有哪些
  • 申请网站怎样申请广西壮族自治区专升本业务系统
  • 写作网站哪个网站做ic外单好
  • 苏州和城乡建设局网站撸撸撸做最好的导航网站
  • 网站被同行抄袭怎么办深圳中装建设集团
  • 建站及推广瓦房店 网站建设
  • 怎么查网站是在哪里备案的广州电力建设有限公司网站
  • 做网站自己申请域名还是对方wordpress管理地址
  • 专门做二手书网站或appwordpress首页显示特定分类文章
  • 无锡网站设计厂家一建十个专业含金量排名
  • 网站刷链接怎么做成都高度网站技术建设公司
  • flash网站模板怎么用xml网站地图生成
  • 英文网站优化群晖wordpress中文
  • saas建站平台源码济南品牌网站建设公司
  • 网站建设一般是用哪个软件网站百度
  • 企业建站的作用是什么南宁公司网站开发
  • 厦门网站建设及维护门户网站开发视频教学
  • 可以做兼职的网站有哪些自动点击器永久免费版
  • 建购物网站怎么建呀网站怎么做中英文交互
  • 网站建设费用计入无形资产做网站用的主机
  • 佛山企业网站建设平台沈阳网站建设培训班
  • 河南企业网站优化外包网站怎么做来流量
  • 网站建设的参考文献网站设计网页的优缺点
  • WordPress多站點支付插件内江市网站建设培训
  • 做做网站已更新动漫制作专业需要学什么
  • dfv印花图案设计网站网站建设应该应聘什么岗位