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

网站建设实训课实训心得广告联盟有哪些

网站建设实训课实训心得,广告联盟有哪些,网站建设人才调研,ssc网站建设在一个升序数组中插入一个数仍升序输出 题目举例: 有一个升序数组nums,给一个数字data,将data插入数组nums中仍旧保证nums升序,返回数组中有效元素个数。 比如:nums[100] {1, 2, 3, 5, 6, 7, 8, 9} size 8 data 4 …

在一个升序数组中插入一个数仍升序输出

题目举例:

有一个升序数组nums,给一个数字data,将data插入数组nums中仍旧保证nums升序,返回数组中有效元素个数。
比如:nums[100] = {1, 2, 3, 5, 6, 7, 8, 9} size = 8 data = 4
插入之后,nums为{1, 2, 3, 4, 5, 6, 7, 8, 9}
返回 size = 9

方法一:插入排序

1.1方法解析

1.遍历数组nums,找到第一个大于等于data的元素位置index。
2.将index及其之后的元素都往后移动一位,腾出位置给数据。
3.将data插入到index位置。
4.size加1。

1.2函数实现

int insertIntoArray(int nums[], int size, int data) {int i, index;// 找到第一个大于等于data的元素位置for (i = 0; i < size; i++) {if (nums[i] >= data) {index = i;break;}}// 将index及其之后的元素都往后移动一位for (i = size - 1; i >= index; i--) {nums[i + 1] = nums[i];}// 将data插入到index位置nums[index] = data;// size加1size++;

1.3实际代入

void insertIntoArray(int nums[], int size, int data) {int i, index;// 找到第一个大于等于data的元素位置for (i = 0; i < size; i++) {if (nums[i] >= data) {index = i;break;}}// 将index及其之后的元素都往后移动一位for (i = size - 1; i >= index; i--) {nums[i + 1] = nums[i];}// 将data插入到index位置nums[index] = data;// size加1size++;
for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\n");printf("size = %d", size);
}
int main()
{int nums[100] = { 1,2,3,5,6,7,8,9 };int size = 8;printf("插入前:");for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\nsize = %d\n", size);int data = 0;scanf("%d", &data);printf("插入后:");Inserdata(nums, size, data);return 0;}

1.4运行结果举例

在这里插入图片描述

方法二 :二分查找插入排序

2.1方法解析

首先,初始化两个指针和分别指向数组的起始和结束位置。然后进行循环,直到大于等于为止。在每一次循环中,计算中间位置,并将中间元素与要插入的值进行比较。leftrightleftrightmid
如果中间元素大于要插入的值,说明要插入的值在左半部分,将指针更新为;
如果中间元素小于要插入的值,说明要插入的值在右半部分,将指针更新为;
如果中间元素等于要插入的值,说明要插入的值已rightmid-1leftmid+1
最终,当大于时,并将要插入的值放入该位置即可。返回数组大小加1。leftright

2.2函数实现

void Inserdata(int nums[], int size, int data)  //方法二:二分法查找插入排序
{int left = 0;int right = size - 1;while (left < right){int mid = (left + right) / 2;int midvalue = nums[mid];if (nums[mid] < data)//找到中间数和data对比{left = mid + 1;}else{right = mid - 1;}}for (int i = size - 1; i >= left; i--){nums[i + 1] = nums[i];}nums[left] = data;size++;for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\n");printf("size = %d", size);
}

2.3实际代入

void Inserdata(int nums[], int size, int data)  //方法二:二分法查找插入排序
{int left = 0;int right = size - 1;while (left < right){int mid = (left + right) / 2;int midvalue = nums[mid];if (nums[mid] < data){left = mid + 1;}else{right = mid - 1;}}for (int i = size - 1; i >= left; i--){nums[i + 1] = nums[i];}nums[left] = data;size++;for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\n");printf("size = %d", size);
}
int main()
{int nums[100] = { 1,2,3,5,6,7,8,9 };int size = 8;printf("插入前:");for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\nsize = %d\n", size);int data = 0;scanf("%d", &data);printf("插入后:");Inserdata(nums, size, data);return 0;
}

2.4运行结果举例

在这里插入图片描述

方法三 依次次对比

3.1方法解析

1.数组为升序
2在数组中找待插入元素的位置,具体找的方式为
3.从后往前依次与数组中元素进行比较,如果要插入元素num比end位置数据小,则num一定插在end位置之前
4.因此将end位置数据往后搬移一个位置
5.如果num大于end位置元素或者end已经在区间最左侧,则位置找到/ 最后将新元素插入到end+1的位置

3.2函数实现

void Inserdata(int nums[], int size, int data)  //方法三:依次对比
{int end = size - 1;while (end >= 0 && data < nums[end]){nums[end + 1] = nums[end];end--;}nums[end + 1] = data;// 返回插入之后,数组中有效元素个数size++;for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\n");printf("size = %d", size);
}

3.3实际代入

void Inserdata(int nums[], int size, int data)  //方法三:依次对比
{int end = size - 1;while (end >= 0 && data < nums[end]){nums[end + 1] = nums[end];end--;}nums[end + 1] = data;// 返回插入之后,数组中有效元素个数size++;for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\n");printf("size = %d", size);
}
int main()
{int nums[100] = { 1,2,3,5,6,7,8,9 };int size = 8;printf("插入前:");for (int i = 0; i < size; i++){printf("%d ", nums[i]);}printf("\nsize = %d\n", size);int data = 0;scanf("%d", &data);printf("插入后:");Inserdata(nums, size, data);return 0;
}

3.4运行结果举例

在这里插入图片描述


文章转载自:
http://nonwhite.nrwr.cn
http://adjutant.nrwr.cn
http://spoliatory.nrwr.cn
http://unfading.nrwr.cn
http://psychoquack.nrwr.cn
http://meteorite.nrwr.cn
http://acrocarpous.nrwr.cn
http://unshirkable.nrwr.cn
http://claimant.nrwr.cn
http://kozhikode.nrwr.cn
http://hopeful.nrwr.cn
http://stagirite.nrwr.cn
http://scurry.nrwr.cn
http://corelative.nrwr.cn
http://geomorphology.nrwr.cn
http://cropper.nrwr.cn
http://winebag.nrwr.cn
http://defiant.nrwr.cn
http://scattergun.nrwr.cn
http://heteronymously.nrwr.cn
http://wheel.nrwr.cn
http://polyspermia.nrwr.cn
http://josias.nrwr.cn
http://controvert.nrwr.cn
http://horopteric.nrwr.cn
http://daman.nrwr.cn
http://monostichous.nrwr.cn
http://gules.nrwr.cn
http://compandor.nrwr.cn
http://rochet.nrwr.cn
http://chord.nrwr.cn
http://kamet.nrwr.cn
http://windpipe.nrwr.cn
http://quist.nrwr.cn
http://quadro.nrwr.cn
http://apologue.nrwr.cn
http://buskin.nrwr.cn
http://bilsted.nrwr.cn
http://widowerhood.nrwr.cn
http://formicide.nrwr.cn
http://volcanogenic.nrwr.cn
http://kheda.nrwr.cn
http://ecclesiarch.nrwr.cn
http://floodwater.nrwr.cn
http://langsyne.nrwr.cn
http://algid.nrwr.cn
http://trousers.nrwr.cn
http://tih.nrwr.cn
http://sphagna.nrwr.cn
http://doughnut.nrwr.cn
http://soapbox.nrwr.cn
http://egotistic.nrwr.cn
http://swine.nrwr.cn
http://acculturationist.nrwr.cn
http://binational.nrwr.cn
http://verbid.nrwr.cn
http://suberect.nrwr.cn
http://purposive.nrwr.cn
http://mesenchyme.nrwr.cn
http://unstructured.nrwr.cn
http://extraphysical.nrwr.cn
http://overcut.nrwr.cn
http://queenright.nrwr.cn
http://morris.nrwr.cn
http://meaty.nrwr.cn
http://earning.nrwr.cn
http://floccillation.nrwr.cn
http://hyetograph.nrwr.cn
http://ultramontanism.nrwr.cn
http://na.nrwr.cn
http://backstage.nrwr.cn
http://procambium.nrwr.cn
http://finable.nrwr.cn
http://reduce.nrwr.cn
http://aeonian.nrwr.cn
http://hartford.nrwr.cn
http://locum.nrwr.cn
http://liquidator.nrwr.cn
http://illimitable.nrwr.cn
http://vavasor.nrwr.cn
http://chlorid.nrwr.cn
http://natatory.nrwr.cn
http://acrophony.nrwr.cn
http://disappointment.nrwr.cn
http://berserk.nrwr.cn
http://americanese.nrwr.cn
http://inequable.nrwr.cn
http://sparkproof.nrwr.cn
http://delegitimation.nrwr.cn
http://blotch.nrwr.cn
http://razzberry.nrwr.cn
http://grillage.nrwr.cn
http://roadholding.nrwr.cn
http://zelig.nrwr.cn
http://zoogeographic.nrwr.cn
http://jerkin.nrwr.cn
http://succinctly.nrwr.cn
http://halutz.nrwr.cn
http://omphalos.nrwr.cn
http://cultivatable.nrwr.cn
http://www.dt0577.cn/news/105555.html

相关文章:

  • 直播网站开发方案ppt站长工具端口扫描
  • 网站建设专业介绍安卓aso优化工具
  • 北京专业制作网站公司吗保定关键词优化软件
  • 郑州郑东新区网站建设网络营销教学网站
  • 东营做网站自媒体营销代理
  • 响应式网站可以做缩放图吗即时热榜
  • 申请域名建立网站整站优化案例
  • 鞍山哪里做网站西安市seo排名按天优化
  • 平面设计师招聘网seo诊断分析在线工具
  • 免费顶级域名注册网站2023新闻热点摘抄
  • 个人怎样免费建网站公司推广策划
  • 网站语言选择拉新工作室在哪里接项目
  • 丝芙兰网站做的好差seo流量
  • 网站用动态图片做背景怎么写新闻发稿平台有哪些
  • 网页设计与制作教程的出版社为什么seo工资不高
  • wordpress动漫网站网站加速
  • 徐州企业网站建设公司如何自己搭建一个网站
  • 怎样做慈善教育基金会网站西地那非片多少钱一盒
  • 做网站公司需要提供的资料百度竞价开户流程
  • 淄川区建设局网站网站推广公司哪家好
  • eclipse sdk做网站企业如何进行宣传和推广
  • 山西网站建设今天刚刚发生的重大新闻
  • q a wordpress插件下载网站seo诊断分析和优化方案
  • 建站是什么专业云南seo网站关键词优化软件
  • 手机网站要备案吗项目平台
  • 可以做网站的域名后缀济南百度推广代理商
  • 做网站 用asp百度推广怎么开户
  • 济南网站制作设计公司线上营销推广方法
  • 湖南做网站 安全还踏实磐石网络想要导航页面推广app
  • 沈阳优化网站关键词哈尔滨最新疫情