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

网站后台制作教程新站点seo联系方式

网站后台制作教程,新站点seo联系方式,程序设计教学网站开发,外贸建站 知乎二分查找题总结 hot100搜索插入位置搜索二维矩阵在排序数组中查找元素的第一个和最后一个位置搜索旋转排序数组寻找旋转排序数组中的最小值寻找两个正序数组的中位数 hot100 搜索插入位置 题目链接: 35.搜索插入位置 代码: class Solution {public in…

二分查找题总结

  • hot100
    • 搜索插入位置
    • 搜索二维矩阵
    • 在排序数组中查找元素的第一个和最后一个位置
    • 搜索旋转排序数组
    • 寻找旋转排序数组中的最小值
    • 寻找两个正序数组的中位数

hot100

搜索插入位置

题目链接:
35.搜索插入位置
代码:

class Solution {public int searchInsert(int[] nums, int target) {int left = 0, right = nums.length - 1;while (left <= right){int mid = left + (right - left) / 2;if (nums[mid] == target){return mid;}else if (nums[mid] < target){left = mid + 1;}else if (nums[mid] > target){right = mid - 1;}}return right + 1;}
}

搜索二维矩阵

题目链接:
74.搜索二维矩阵
代码:

class Solution {public boolean searchMatrix(int[][] matrix, int target) {int m = matrix.length, n = matrix[0].length;int l = 0, r = m*n - 1;while (l <= r){int mid = l + (r-l)/2;int row = mid / n;int col = mid % n;if (target == matrix[row][col]) return true;if (target > matrix[row][col]) l = mid + 1;if (target < matrix[row][col]) r = mid - 1;}return false;}
}

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

题目链接:
34.在排序数组中查找元素的第一个和最后一个位置
代码:

class Solution {int binarySearch(int[] nums, int target){int left = 0, right = nums.length - 1;while (left <= right){int mid = left + (right - left) / 2;if (nums[mid] == target){return mid;}else if (nums[mid] > target){right = mid - 1;}else if (nums[mid] < target){left = mid + 1;}}return -1;}public int[] searchRange(int[] nums, int target) {int index = binarySearch(nums,target);if (index == -1){return new int[]{-1,-1};}int left = index;int right = index;while(left - 1 >= 0 && nums[left] == nums[left - 1]){left --;}while(right + 1 < nums.length && nums[right] == nums[right + 1]){right ++;}return new int[]{left,right};}
}

搜索旋转排序数组

题目链接:
33.搜索旋转排序数组
代码:

class Solution {public int search(int[] nums, int target) {int n = nums.length;if (n == 0) return -1;if (n == 1) return nums[0] == target ? 0:-1;int l = 0, r = n - 1;while (l <= r){int mid = l + (r - l) / 2;if (target == nums[mid]) return mid;if (nums[0] <= nums[mid]){if (nums[0] <= target && target < nums[mid]){r = mid - 1;}else{l = mid + 1;}}else{if (nums[mid] < target && target <= nums[n - 1]){l = mid + 1;}else{r = mid - 1;}}}return -1;}
}

寻找旋转排序数组中的最小值

题目链接:
153.寻找旋转排序数组中的最小值
代码:

class Solution {public int findMin(int[] nums) {int l = 0, r = nums.length - 1;int minn = Integer.MAX_VALUE;while (l <= r) {int mid = l + (r - l) / 2;if (nums[mid] < nums[r]) {minn = Math.min(minn, nums[mid]);r = mid - 1;}else {minn = Math.min(minn, nums[l]);l = mid + 1;}}return minn;}
}

寻找两个正序数组的中位数

题目链接:
4.寻找两个正序数组的中位数
代码:

class Solution {public double findMedianSortedArrays(int[] nums1, int[] nums2) {int m = nums1.length, n = nums2.length;int len = m + n;int left = -1, right = -1;int aStart = 0, bStart = 0;for (int i = 0; i <= len / 2; i ++){left = right;if (aStart < m && (bStart >= n || nums1[aStart] < nums2[bStart])){right = nums1[aStart ++];}else{right = nums2[bStart ++];}}if (len % 2 == 0){return (left + right) / 2.0;}else{return right;}}
}
http://www.hengruixuexiao.com/news/24233.html

相关文章:

  • 网站开发劳动合同范本如何推广自己的产品
  • 门户网站建设开发网络推广哪个平台最好
  • 三折页设计那个网站做的好百度问答优化
  • 贵阳市城乡建设部网站商城推广
  • 珠海手机网站建设网上售卖平台有哪些
  • 典型的网站开发人员推广方案100个
  • 邯郸房产网签怎么查询站长工具seo综合查询关键词
  • 网页设计与制作教程期末考试成都网站改版优化
  • 青岛做网站哪里好个人网页制作
  • 山东网站建设哪家好网站测试报告
  • 彩票网站开发 违法最新的全国疫情
  • 电影网站html模板互联网营销师考证多少钱
  • wordpress带颜色的文字网页seo搜索引擎优化
  • 网站不收录是什么原因全媒体运营师报考官网在哪里
  • 菠菜网站怎么做推广比较好定制网站制作公司
  • 网站做哪些比较有意思贵阳网站建设
  • 如何做外文网站网络营销推广的特点
  • 专业做外贸网站建设百度浏览器电脑版
  • 商水建设局网站举例网络营销的例子
  • 集团公司网站推广方案怎么做企业邮箱申请
  • 团购网站html模板怎么自己建立一个网站
  • 深圳网上申请营业执照流程湖北seo推广
  • 开天猫旗舰店网站建设网站快速排名服务
  • 可信网站验证价格百度学术论文查重官网
  • 汕头网站外包永久8x的最新域名
  • 有哪些可以做图的网站啊关键词搜索引擎工具爱站
  • 做图专业软件下载网站有哪些世界羽联巡回赛总决赛
  • 英孚做测试的网站站长之家统计
  • 可以直接进网站正能量小米网站构建的基本流程
  • 家具网站建设策划方案怎么搭建自己的网站