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

建设银行开通网站查询密码如何策划一个营销方案

建设银行开通网站查询密码,如何策划一个营销方案,做本地团购网站,网站做的好坏主要看#x1f31e; 题目#xff1a; #x1f30f;在有序数组A中#xff0c;查找目标值target #x1f30f;如果找到返回索引 #x1f30f;如果找不到返回-1 算法描述解释前提给定一个内含n个元素的有序数组A#xff0c;满足A0A1A2An-1,一个待查值target1设… 题目 在有序数组A中查找目标值target 如果找到返回索引 如果找不到返回-1 算法描述解释前提给定一个内含n个元素的有序数组A满足A0A1A2·······An-1,一个待查值target1设置left0right n - 12如果left right 结束查找没找到3设置mid (left right )/2mid为中间索引4如果target Am设置right mid -1跳到第2步5如果target Am设置left mid 1跳到第2步6如果Am target结束查找找到了 算法实现 public int binarySearch(int[] arr,int target) {int left 0;int right arr.length-1;while(leftright) {int mid (leftright)1;if(target arr[mid]) {right mid - 1;}else if (arr[mid] target) {left mid 1;}else {return mid;}}return -1;}注解 1.为什么while循环条件是leftright而不是leftright 因为当leftright时midleftright可能为我们想要查找的值 2.为什么mid (leftright)1而不是(leftright)/2呢 是无符号右移无符号右移一位相当于除2取整。 不用(leftright)/2原因是当leftright的值超过int类型的正整数最大范围其值就会由正变负 在其他的资料中二分查找与这个代码不一样 ✈️ 二分查找的改动版 public static int binarySearch1(int[] arr,int target) {int left0;int right arr.length; //第一处改动while(left right) { //第二处改动int mid (leftright)1;if(target arr[mid]) {right mid; //第三处改动}else if (arr[mid] target) {left mid 1;}else {return mid;}}return -1;}⛵️注解 rightarr.length作为一个边界存在left可能为我们的查找目标但是right一定不是我们要找到的目标 图解演示 查找13 ⛽️在Java中其实已经提供了二分查找的方法binarySearch public class Test {public static void main(String[] args) {int[] arr {1,2,3,4,5,5,6};int target Arrays.binarySearch(arr,3);System.out.println(target);} }运行结果 2 二分查找对重复元素的处理 重复元素最靠右的元素 说明查找元素为重复元素的话会查找到最右边的重复元素 Returns 找到则返回最靠右索引 找不到返回-1 //重复元素最靠右的元素 public class Test5 {public static int binarySearch2(int[] arr,int target) {int left 0;int right arr.length-1;int cand -1;while (left right) {int mid (left right)1;if(target arr[mid]) {right mid-1;} else if (arr[mid] target) {left mid1;}else {cand mid;left mid1;}}return cand;} }说明返回target的最右边的索引 Returns 找到则返回最靠右索引 找不到返回小于target最右边的索引 public static int binarySearchRightMost(int[] arr,int target){int left 0;int right arr.length-1;while(left right) {int mid (left right )1;if(target arr[mid]){right mid-1;}else {left mid 1;}}return left-1;}重复元素最靠左的元素 说明查找元素为重复元素的话会查找到最左边的重复元素 Returns 找到则返回最靠左索引 找不到返回-1 public static int binarySearch2(int[] arr,int target) {int left 0;int right arr.length-1;int cand -1;while (left right) {int mid (left right)1;if(target arr[mid]) {right mid-1;} else if (arr[mid] target) {left mid1;}else {cand mid;right mid - 1;}}return cand;}说明 返回target最左边的索引 Returns 找到则返回最靠左索引 找不到返回比target大的最左边索引 public static int binarySearchLeftMost(int[] arr,int target) {int left0;int right arr.length-1;while(left right) {int mid (left right)1;if(target arr[mid]) {right mid - 1;}else {left mid 1;}}return left;}图解 leetcode二分查找题 1️⃣1.给定一个 n 个元素有序的升序整型数组 nums 和一个目标值 target 写一个函数搜索 nums 中的 target如果目标值存在返回下标否则返回 -1。 ⏩ 链接: 二分查找 提示 你可以假设 nums 中的所有元素是不重复的。 n 将在 [1, 10000]之间。 nums 的每个元素都将在 [-9999,9999]之间。 class Solution {public int search(int[] nums, int target) {int i0;int j nums.length-1;while(ij){int m(ij)1;if(targetnums[m]){jm-1;}else if(nums[m]target){im1;}else{return m;}}return -1;} }2️⃣2.给定一个排序的整数数组 nums 和一个整数目标值 target 请在数组中找到 target 并返回其下标。如果目标值不存在于数组中返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 ⏩ 链接: 搜索插入位置 class Solution {public int searchInsert(int[] nums, int target) {int left0;int right nums.length-1;while(left right) {int mid (left right)1;if(target nums[mid]) {right mid - 1;}else {left mid 1;}}return left;} }3️⃣3.给你一个按照非递减顺序排列的整数数组 nums和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。 ⏩ 链接: 在排序数组中查找元素的第一个和最后一个位置 class Solution {public int[] searchRange(int[] nums, int target) {int xleft(nums,target);if(x-1){return new int[]{-1,-1};}else{return new int[]{x,right(nums,target)};}}public int left(int[] nums,int target) {int i0;int jnums.length-1;int cand-1;while(ij){int m(ij)1;if(targetnums[m]){jm-1;}else if(nums[m]target){im1;}else{candm;jm-1;}}return cand;}public int right(int[] nums,int target) {int i0;int jnums.length-1;int cand-1;while(ij){int m(ij)1;if(targetnums[m]){jm-1;}else if(nums[m]target){im1;}else{candm;im1;}}return cand;} }
http://www.hkea.cn/news/14592861/

相关文章:

  • 建筑模版东莞网站建设技术支持网站开发申请报告
  • seo营销型网站推广vultr宝塔wordpress
  • 哪里可以接网站开发的活pc网站建设怎么做
  • 网站建设丨金手指谷哥14wordpress 模板 下载
  • 哈尔滨建设网站哪家好做盗版电影网站吗
  • 郑州妇科杭州龙席网络seo
  • 情感视频素材网站在线视频用什么网址
  • 博优云软件官方网站网站建设策划完整方案
  • 哪个网站是专门做装修的wordpress 多图上传插件
  • 做网站服务器一年多少钱天津网站建设开发
  • 江阴网站建设哪家好网页制作教程素材
  • 江苏网站seo优化网站没制作好可以备案吗
  • 建设自己网站的流程wordpress图片链接插件
  • 用wp做网站备案网站开发如何
  • 一页网站wordpress quiz
  • 网站建设预算表北京公司可以在上海建网站吗
  • 网站模版 拓近期楼市最新消息
  • 求网站建设网站优化工作免费的云服务器哪家好
  • php做网站半成品网络科技有限公司网站
  • 免费网站推广o2o电子商务平台有哪些
  • 网站建设 主机选择asp网站部署 iis7
  • 石家庄招聘哪个网站做的好网站建设项目软件开发招标文件
  • 营销型网站有哪些手机软件下载大全
  • 公司网页网站建设+ppt模板下载沈阳做网站的公司有哪些
  • 网站asp文件只读手机商城网站建设
  • 做网站必须要公网ip有没有教做川菜的网站
  • 枣庄建网站的公司重庆宣传片2023
  • 怎么编辑网站源代码深圳营销型网站建设+宝安西乡
  • 做好中心网站建设工作总结室内设计家装设计
  • 常用的设计师网站男男做暧网站免费