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

赤峰酒店网站建设哪家便宜友情链接是外链吗

赤峰酒店网站建设哪家便宜,友情链接是外链吗,富阳建设局网站电话,做火影忍者网站的格式题解 | #数字在升序数组中出现的次数# JZ3数字在升序数组中出现的次数 描述 给定一个长度为 n 的非降序数组和一个非负数整数 k ,要求统计 k 在数组中出现的次数 数据范围:0≤n≤1000,0≤k≤100,数组中每个元素的值满足 0≤val≤100 要求…

题解 | #数字在升序数组中出现的次数#

JZ3数字在升序数组中出现的次数

描述

给定一个长度为 n 的非降序数组和一个非负数整数 k ,要求统计 k 在数组中出现的次数

数据范围:0≤n≤1000,0≤k≤100,数组中每个元素的值满足 0≤val≤100
要求:空间复杂度 O(1),时间复杂度 O(logn)

输入:

[1,2,3,3,3,3,4,5],3

返回值:

4

 做题思路

函数名为GetNumberOfK。函数接受三个参数:data是一个整型数组指针,dataLen是数组的长度,k是要查找的目标值。 函数的目标是统计数组中目标值k出现的次数,并返回该次数。函数的实现思路如下: 初始化变量mid、start和end,分别表示当前搜索范围的中间位置、起始位置和结束位置。 初始化变量left和right,分别表示目标值k的左边界和右边界。 使用二分查找的思路,在数组中找到目标值k的任意一个位置。 如果data[mid]大于k,将end更新为mid。 如果data[mid]小于k,将start更新为mid。 如果data[mid]等于k,表示找到目标值,将left和right初始化为mid。 在找到目标值的位置后,分别向左和向右遍历数组,找到目标值k的左边界和右边界。 当data[left]等于k时,向左移动left。 当data[right]等于k时,向右移动right。 返回右边界right减去左边界left再减去1,即为目标值k在数组中出现的次数。

C语言代码 

/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可*** @param nums int整型一维数组* @param numsLen int nums数组长度* @param k int整型* @return int整型*/
#include <stdio.h>
#include <stdlib.h>int GetNumberOfK(int* data, int dataLen,int k ) {  //先找到目标target值的任意一个位置,再分别往左往右找int mid = 0;int start = 0;int end = dataLen - 1;int left = 0 ;int right = 1;for (int i = start; i <= end; i++) {mid = (start + end) / 2;if (data[mid] > k) {end = mid;}if (data[mid] < k) {start = mid;}if (data[mid] ==k) {                                         //找到值的时候break;left = mid;right = mid;printf("mid=%d\n", mid);while (data[left] == k) {left--;}while (data[right] == k) {right++;}printf("left=%d right=%d\n", left, right);break;}}return right - left - 1;
}

http://www.wangmingla.cn/news/99101.html

相关文章:

  • wordpress后台管理界面美化seo试用软件
  • 网站开发语言 asp产品推广网站
  • 做视频好用的素材网站企业网站seo诊断报告
  • 怎么做直播网站点击精灵seo
  • 做图的兼职网站网站更换服务器对seo的影响
  • 做自己的第一个网站百度实时热点排行榜
  • 长春专业网站建设公司排名拉新平台
  • 淄博网站制作网络丰富微博推广方式
  • 活体拍摄四川seo推广
  • php网站开发进程状态百度推广开户流程
  • 地区电商网站系统培训心得体会200字
  • 微信怎么做捐钱的网站软文世界
  • dw可以做移动端网站营销软文范例大全300字
  • 广南网站制作百度app安装下载免费
  • 做网站什么好搜狗关键词排名查询
  • 微信公众号怎么建立重庆seo搜索引擎优化优与略
  • 宜昌百度网站建设郑州网站顾问
  • 网站设计原型图怎么做2345网址大全下载到桌面
  • 免费算生辰八字算命旺道seo优化软件
  • wordpress源码教程苏州旺道seo
  • 珠海微网站建设电脑优化软件
  • 白云做网站公司微信朋友圈营销方案
  • 通用网址通用网站查询百度云群组
  • 模板网站怎么做开创集团与百度
  • 网站建设公司的服务特点网络营销是指
  • 湖南雷锋建设有限公司网站独立站seo是什么意思
  • 网站内的搜索是怎么做的深圳网络公司推广平台
  • 做网站服务器系统网络推广员怎么做
  • 做淘宝货源批发的网站企业推广方式
  • 厦门微信网站建设视频营销成功的案例