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

佛山网站建设哪个网站开发公司人员配置

佛山网站建设哪个,网站开发公司人员配置,深入浅出wordpress下载,WordPress插件Onedrive1.基本思想 直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。 实际中我们玩扑克牌时,就用…

1.基本思想

        直接插入排序是一种简单的插入排序法,其基本思想是:把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。

实际中我们玩扑克牌时,就用了插入排序的思想

2.直接插入排序

        当插入第 i(i>=1) 个元素时,前面的 array[0],array[1],…,array[i-1] 已经排好序,此时用 array[i] 的排序码与 array[i-1],array[i-2],… 的排序码顺序进行比较,找到插入位置即将 array[i] 插入,原来位置上的元素顺序后移。

3.代码实现

// 直接插入排序函数​
// 参数a是待排序数组的指针,n是数组的元素个数​
void InsertSort(int* a, int n)​
{​// 外层循环:遍历从0到n - 2的元素,因为最后一个元素不需要再插入​for (int i = 0; i < n - 1; i++)​{​// end指向当前已排好序部分的最后一个元素​int end = i;​// 暂存当前待插入的元素,即end + 1位置的元素​int tmp = a[end + 1];​// 内层循环:从end位置开始向前比较,将大于tmp的元素向后移动​while (end >= 0)​{​// 如果当前end位置的元素大于tmp​if (a[end] > tmp)​{​// 将a[end]向后移动一个位置​a[end + 1] = a[end];​// end向前移动一个位置,继续向前比较​end--;​}​else​//end < 0时,意味着在已排序序列中,当前待插入元素tmp的值是最小的{​// 当遇到不大于tmp的元素时,说明找到了tmp的插入位置,跳出循环​break;​}​}​// 将tmp插入到正确的位置​a[end + 1] = tmp;​}​
}

4.小试牛刀

        题目链接:P1223 排队接水 - 洛谷

   4.1解题思路

        这道题的核心思路是让接水时间短的人先接水,从而使总的等待时间最短,平均等待时间也最小。

   4.2代码

        本题可使用多种排序方法,这里我使用的是插入排序:

#include<stdio.h>
//定义个人结构体
typedef struct 
{int number;//编号int time;//接水时间
}Person;
void InsertSort(Person* arr,int n)
{for(int i=0;i<n-1;i++){int end=i;//数组中的第二个元素为待排序的对象,默认第一个元素已排序Person tmp=arr[end+1];while(end>=0){if(arr[end].time>tmp.time){arr[end+1]=arr[end];end--;}else{break;}}arr[end+1]=tmp;}
}
main()
{int n;//排队人数Person people[1001]={0};double total=0;scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d",&people[i].time);//实际编号为数组编号加1people[i].number=i+1;}InsertSort(people,n);//输出队列序号for (int i = 0; i < n; i++){printf("%d ",people[i].number);}//计算排队时间并输出for(int i=1;i<n;i++){for(int j=0;j<i;j++){total+=people[j].time;}}printf("\n%.2lf",total/(n));
}

5.疑难解答

     5.1为什么第一层循环结束条件为i<n-2

        直接插入排序的基本思想是把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。

        初始时,我们可以把数组的第一个元素看作是一个已经排好序的单元素序列。从第二个元素开始,依次将每个元素插入到前面已排好序的序列中的合适位置。

        当我们处理到数组的倒数第二个元素(即索引为 `n - 2` 的元素)时,经过这一轮插入操作后,前面 `n - 1` 个元素已经是有序的了。此时,数组中只剩下最后一个元素(索引为 `n - 1` 的元素)还未插入到有序序列中。

        由于前面 `n - 1` 个元素已经有序,那么对于最后一个元素,我们只需要将它与前面 `n - 1` 个有序元素进行比较并插入到合适位置即可,不需要再进行一轮新的外层循环来处理它。所以,外层循环只需要遍历到索引为 `n - 2` 的元素,即 `for (int i = 0; i < n - 1; i++)`,这样就能保证整个数组最终被排序。

        举个例子,对于数组 `[4, 2, 1, 3]`:

        1. 初始时,把 `4` 看作已排好序的序列。

        2. 外层循环第一次,`i = 0`,将 `2` 插入到 `[4]` 中,得到 `[2, 4]`。

        3. 外层循环第二次,`i = 1`,将 `1` 插入到 `[2, 4]` 中,得到 `[1, 2, 4]`。

        4. 外层循环第三次,`i = 2`,将 `3` 插入到 `[1, 2, 4]` 中,得到 `[1, 2, 3, 4]`,此时数组已经有序,不需要再处理最后一个元素的插入了。


-------有问题欢迎私信和评论------ 


文章转载自:

http://EKcrqaDP.gchqy.cn
http://5yZt5PXQ.gchqy.cn
http://yGk7Yd6o.gchqy.cn
http://0LzvNnly.gchqy.cn
http://YyjF7NZc.gchqy.cn
http://8z2Szl0K.gchqy.cn
http://dZhKP1Bn.gchqy.cn
http://5pvwbd4x.gchqy.cn
http://sdMq4GVG.gchqy.cn
http://C0RgbPf9.gchqy.cn
http://HOustCZy.gchqy.cn
http://a9JL5sOc.gchqy.cn
http://o6UdnP1A.gchqy.cn
http://ooaSqYnY.gchqy.cn
http://zBiBHm5K.gchqy.cn
http://JJgOEfRP.gchqy.cn
http://iX7OtB4B.gchqy.cn
http://GFXrspvT.gchqy.cn
http://8h4Je75I.gchqy.cn
http://C5Oa7ce2.gchqy.cn
http://kWiGQtDI.gchqy.cn
http://skJOWP0f.gchqy.cn
http://mYO7Le1T.gchqy.cn
http://odrthnuV.gchqy.cn
http://Y5kusAyO.gchqy.cn
http://T1MAyG89.gchqy.cn
http://bnTEr77n.gchqy.cn
http://gS4TAozS.gchqy.cn
http://sszUxbDV.gchqy.cn
http://fDlHtxnx.gchqy.cn
http://www.dtcms.com/wzjs/673037.html

相关文章:

  • 贵阳中企动力做的网站网站功能规划
  • 公司做网站好安徽海通建设集团网站
  • 做网站游戏推广赚钱网站流量怎么查看
  • 如何用dw做网站地图大连旅顺口景点介绍
  • 网站页面如何设计图成都网站品牌设计公司
  • 学网站开发跟那个专业最相近wordpress 轮播图代码
  • 什么专业会制作网站简单的个人网页模板
  • wordpress首页菜单怎么设置wordpress网页优化
  • 阿里云需要网站建设方案书打车小程序源码
  • 岚山网站建设公司广东东莞属于哪个市
  • 网站高端定制wordpress 博主认证
  • 徐州网站建设熊掌号深圳网站seo优化公司
  • 做网站用什么ps软件58同城泰安二手房出售信息
  • 龙岩网页厦门seo关键词
  • 网站开发公司哪家好网站的总体架构
  • 帝国调用网站名称网站建设有哪些功能模块
  • 丝绸之路网站建设报告免费推广渠道有哪些方式
  • 茶叶淘宝店网站建设ppt如何用手机做钓鱼网站
  • 北京住房和建设部网站网站建设上海网站建设公司网站
  • 天津网站建设天津双桥网站建设
  • 南阳网站推广公司建网站的公司赚钱吗
  • 网站建设林晓东化工网站建设公司
  • 极客网站建设重庆旅游网页设计
  • c2c有哪些网站wordpress仿QQ看点
  • 文化类网站建设网页开发人员工具
  • 自己做seo网站推广用别人的电影网站做公众号
  • 怎样自己做网站赚钱民宿网站开发数据流图
  • 商城类网站如何做手机网站制作优化
  • 在线生成网页网站推广优化
  • 网站悬浮窗口做网站的企业是什么行业