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

做网站这个工作怎么样免费观看短视频的app软件推荐

做网站这个工作怎么样,免费观看短视频的app软件推荐,wordpress页面自定义页面跳转,dede 转wordpress文章目录 前言一、704. 二分查找二、27. 移除元素三、34. 在排序数组中查找元素的第一个和最后一个位置总结 前言 这次是C; 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素_愚者__的博客-CSDN博客 (java) 一、704. 二分查找 的优…

文章目录

  • 前言
  • 一、704. 二分查找
  • 二、27. 移除元素
  • 三、34. 在排序数组中查找元素的第一个和最后一个位置
  • 总结

前言

这次是C;

代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素_愚者__的博客-CSDN博客 (java)


一、704. 二分查找

+的优先级高于>>

int search(int* nums, int numsSize, int target){int left = 0;int right = numsSize-1;int middle = 0;while(left <= right){middle = left + ((right-left)>>1);if(nums[middle] > target){right = middle-1;}else if(nums[middle] <target){left = middle+1;}else if(nums[middle] == target){return middle;}}return -1;
}

二、27. 移除元素h

先赋值,后++;

int removeElement(int* nums, int numsSize, int val){int slow= 0;for(int fast = 0;fast<numsSize;fast++){if(val != nums[fast]){nums[slow] = nums[fast];// slow = slow + 1;slow ++;}}return slow;
}

三、34. 在排序数组中查找元素的第一个和最后一个位置

难点:

1.在于类型分类上,左右边界需要独自寻找;

2. 为什么会有“*returnSize = 2”,不太能理解它到底起什么作用;如果把这句删掉,后面的resNum就出不来结果;如果更改成“*returnSize = 1”,会只出现左右边界的一个

returnSize 是一个指针,它指向一个整数变量,该变量表示要返回的数组的大小。在 searchRange 函数中写 *returnSize = 2;,是在告诉调用者返回的数组 resNums 有两个元素。
这是 LeetCode 中 C 语言版本的函数参数约定,以便在函数返回一个数组时,调用者也能知道数组的大小。在许多其他编程语言中,例如 Python 或 Java,数组或列表自身包含长度信息,所以不需要这种约定。但在 C 中,纯数组并不知道自己的长度,所以需要一个额外的参数来传递这个信息。
在纯C中,数组不知道自己的大小,因此常见的方法是在函数返回一个数组时,通过一个额外的参数(通常是一个指针)来返回其大小。这是在很多传统的C库和应用程序中的常见模式。
LeetCode采用了这个模式,并为C语言解决方案设定了一个约定,要求函数除了返回数组外,还要通过一个额外的指针参数返回数组的大小。这样,LeetCode的判题系统就可以知道返回数组的实际大小,从而正确地评估解决方案。
所以,这是LeetCode为了清晰地得到结果信息而采用的约定,但这种约定在C语言的实践中是常见的。
在其他环境或自己的项目中,如果你没有提供一种告知数组长度的机制,你也会遇到同样的问题。C语言不提供自带的机制来确定动态分配的数组的大小,所以你需要自己跟踪它,或者使用某种约定(如数组的特殊值)来表示数组的结束。
因此,为了正确地处理数组和它的长度,你应该始终提供一个机制(无论是额外的参数、结构体还是其他方法)来传递数组的实际大小。

                                                                                                                      ——from 卡卡鱼

但是“returnSize = 2”,和后面的resNums没有关系啊,resNums是我们自己设置的:

leetcode里面  我们实现的函数最终要被调用的   外面的函数会使用这个变量(returnSize)来得到searchRange()返回的数组的大小;

                                                                           ——from Go\C++-Nefelibata-华中农大研三

代码:

int* searchRange(int* nums, int numsSize, int target, int* returnSize){int leftBorder = searchLeftBorder(nums,numsSize,target);int rightBorder = searchRightBorder(nums,numsSize,target);*returnSize = 2;int *resNums = (int*)malloc(sizeof(int) * 2);resNums[0] = leftBorder;resNums[1] = rightBorder;return resNums;
}int searchLeftBorder(int *nums,int numsSize,int target){int left = 0;int right = numsSize-1;int leftBorder = -1;while(left <= right){int middle = left + ((right-left)>>1);if(nums[middle] == target){leftBorder = middle;right = middle - 1;}else if (nums[middle] > target) {right = middle - 1;} else {left = middle + 1;}}return leftBorder;
}int searchRightBorder(int *nums,int numsSize,int target){int left = 0;int right = numsSize-1;int rightBorder = -1;while(left <= right){int middle = left + ((right-left)>>1);if(nums[middle] == target){rightBorder = middle;left = middle + 1;}else if (nums[middle] > target) {right = middle - 1;} else {left = middle + 1;}}return rightBorder;
}

总结

java转C语言,进步很大,开心。

http://www.hengruixuexiao.com/news/23989.html

相关文章:

  • 降龙网络专业做网站百度关键词优化首选667seo
  • erp软件多少钱优化排名 生客seo
  • 妇科网站源码百度云服务器官网
  • 网站引导图百度官网推广
  • 网站开发与设计现状最新国际新闻
  • 网站建设报价怎么差别那么大已备案域名30元
  • wordpress首页显示vip标签湖南seo优化排名
  • jsp做视频网站关键词优化公司排名榜
  • 怎么做没有后台程序的网站seo是搜索引擎营销
  • 兰州网站制作要多少钱什么是seo搜索引擎优化
  • html5可以做手机网站吗开发网站建设公司
  • 个人网站建设营销推广文案代写收费标准
  • wps哪个工具做网站百度指数查询入口
  • 邮箱的官方网站注册互联网外包公司有哪些
  • 上海市建设执业资格注册中心网站高级搜索
  • 做的比较好的二手交易网站有哪些百度指数怎么看城市
  • 网站设计做图工具手机怎么制作网页
  • 郑州做网站费用seo学徒招聘
  • 邢台企业做网站找谁搭建一个网站需要多少钱
  • 做外贸网站需要注意些什么手续上海关键词排名提升
  • 一重大连工程建设有限公司官方网站网络营销课程速成班
  • 网站建设美国下列关于友情链接说法正确的是
  • 柯桥区建设集团网站seo技术软件
  • 绵阳住房和城乡建设厅官方网站扬州百度seo公司
  • 网站建设与实现的要求与务长沙网站seo外包
  • 手机网站如何建设亚马逊查关键词搜索量的工具
  • 网站内容架构拓扑怎么做2024年2月新冠疫情又开始了吗
  • 电脑网站怎么做百度seo排名曝光行者seo
  • 什么网站做简历百度搜索风云榜官网
  • 做免费网站北京seo外包平台