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

怎么在移动端网站下面做联系人信息流广告视频

怎么在移动端网站下面做联系人,信息流广告视频,怎样用vps做网站,定制网站建设服务公司本专栏为c语言练习专栏#xff0c;适合刚刚学完c语言的初学者。本专栏每天会不定时更新#xff0c;通过每天练习#xff0c;进一步对c语言的重难点知识进行更深入的学习。 今日练习题关键字#xff1a;记负均正    旋转数组的最小数字    二分查找 #x1f493;博主… 本专栏为c语言练习专栏适合刚刚学完c语言的初学者。本专栏每天会不定时更新通过每天练习进一步对c语言的重难点知识进行更深入的学习。 今日练习题关键字记负均正    旋转数组的最小数字    二分查找 博主csdn个人主页小小unicorn ⏩专栏分类C语言天天练 代码仓库小小unicorn的代码仓库 关注我带你学习编程知识 Day1 题目一题目描述解题思路代码实现结果情况 题目二题目描述解题思路1.为什么想到二分查找2.如何解决分段单调的问题3.上面的写法发生错误,为什么呢4.如何解决重复的问题? 代码实现结果情况 总结 题目一 题目描述 题目来源记负均正 首先输入要输入的整数个数n然后输入n个整数。输出为n个整数中负数的个数和所有正整数的平均值结果保留一位小数。 0既不是正整数也不是负数不计入计算。如果没有正数则平均值为0。 数据范围 1≤n ≤2000 输入的整数都满足 ∣val∣≤1000 输入描述 首先输入一个正整数n 然后输入n个整数。 输出描述 输出负数的个数和所有正整数的平均值。 解题思路 1.边输入边统计负数个数 2.边输入边统计正整数个数注意0既不是正整数也不是负整数否则求平均会出问题 3.求平均时特殊处理除数为0的情况 代码实现 #includestdio.hint main() {int cnt;int num[2000];int avr 0;int negtive 0;float sum 0;scanf(%d, cnt);for (int i 0; i cnt; i) {scanf(%d, num[i]);if (num[i] 0) {negtive;}if (num[i] 0) {avr;sum num[i];}}//输出负数个数|所有正数平均值结果保留一位小数if (avr 0) {//考虑除数为0的情况printf(%d 0.0\n, negtive);}else {printf(%d %0.1f\n, negtive, sum / avr);}return 0; } 结果情况 符合题目要求问题解决。 题目二 题目描述 题目来源旋转数组的最小数字 有一个长度为 n 的非降序数组比如[1,2,3,4,5]将它进行旋转即把一个数组最开始的若干个元素搬到数组的末尾变成一个旋转数组比如变成了[3,4,5,1,2]或者[4,5,1,2,3]这样的。请问给定这样一个旋转数组求数组中的最小值。 解题思路 这道题目,我们可以采用一个方法:二分查找. 1.为什么想到二分查找 二分查找的本质的本质是二段性只要满足二段性的问题都可以使用二分查找求解。 在本题中二分查找的二段性体现在最小值左边的单调增最小值右边的单调增。且左边的元素都大于右边的元素。 2.如何解决分段单调的问题 很简单我们只需要比对arr[mid]与arr[0]和arr[numsSize - 1]的大小关系就可以 1.arr[mid] arr[0],说明mid此时落在最小值左边 2.arr[mid] arr[numsSize - 1]说明此时mid落在最小值的右边。 根据这一特性我们利用左闭右开型的二分查找就可以压缩出最小值所在的地方。 到此我们可以写下这样的一段代码 int minNumberInRotateArray(int* arr, int arrSize) {int left 0;int right arrSize - 1;while(left right){int mid (left right) / 2;if(arr[mid] arr[0]){left mid 1;}else{right mid;}}return arr[left]; } 3.上面的写法发生错误,为什么呢 因为题目只是说到非降序所以不能排除出现重复的情况 4.如何解决重复的问题? 我们重点对数据的右边进行去重 1.如果发生arr[mid] arr[right],则和上面一样使得right mid。 2.如果发生arr[mid] arr[right],则和上面一样使得left mid 1。 3.如果发生arr[mid] arr[right],则说明发生重复对于重复我们将right–因为既然有重复那删掉其中一个可以保证至少还有1个。 这样不断删之后可以排除重复的影响最终的代码如下: 代码实现 int minNumberInRotateArray(int* arr, int arrSize) {int left 0;int right arrSize - 1;while(left right){int mid (left right) / 2;if(arr[mid] arr[right])right mid;else if(arr[mid] arr[right])left mid 1;elseright - 1;}return arr[left]; } 结果情况 调整过后的代码符合题目要求,题目得到解决. 总结 今天的两道编程题整体来说难度不大。只不过有个新颖的点在于第二道题用到了二分查找。通过不断改进我们的思路一步一步完善最后将问题解决。 文章到这里就要告一段落了有更好的想法或问题欢迎评论区留言。 希望今天的练习能对您有所收获咱们下期见
http://www.w-s-a.com/news/767560/

相关文章:

  • 售后服务 网站建设阳江seo优化
  • 网站建设后怎么赚钱wordpress调用导航栏
  • 特产网站设计六色网站
  • 服务器网站备案做网站公司如何赚钱
  • 怎样进行站点优化荣成市有做网站的吗
  • 合肥建设工会网站芜湖做网站建设公司
  • 玉林市住房和城乡建设局网站网站开发百灵鸟
  • 网站怎么做双机房切换建设部网站2015年第158号
  • 郑州服务设计公司网站色块的网站
  • 网站设计所用到的技术做网站添加mp3
  • 凡科做的微网站怎样连接公众号seo李守洪排名大师
  • 温州网站开发网站的制作东莞寮步伟易达电子厂
  • 北京网站设计制作关键词优化微信小程序开发推广网站建设优化规划书
  • 杭州临平网站建设开发公司将购房款划给总公司的法律责任
  • 广东外贸网站推广分类wordpress
  • 聚美优品网站建设方案商城和营销型网站建设
  • 比较著名的seo网站如何建设网站?
  • 如何做商业网站最火wordpress主题
  • 建设网站需要哪些软硬件条件wordpress文章页标题优化
  • 网站建设功能需求文档wordpress 1g1核1m
  • 学做窗帘要下载哪个网站用户反馈数据分析软件园
  • 宁晋网站建设多少钱产品宣传推广方式有哪些
  • delphi做网站阿里巴巴官网首页登录入口
  • 游戏网站怎么建设新建wordpress模板
  • 网络服务器是指兰州网站seo诊断
  • 怎样做投资理财网站godaddy上传网站
  • 网站建设深圳哪家好世界500强企业招聘网站
  • 如何减少网站建设中的错误温州网站公司哪家好
  • 宜章网站建设北京定制公交网站
  • 怎么让谷歌收录我的网站郑州网站建设更好