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

长沙住房建设部网站沈阳方正建设监理网站

长沙住房建设部网站,沈阳方正建设监理网站,wordpress 国内主题 营销主题,西安网站制作资源目录7 两数之和题目描述#xff1a;解题思路与代码暴力解法#xff1a;解法一#xff1a;二分查找解法二#xff1a;双指针2 斐波那契数列题目描述#xff1a;解题思路与代码![请添加图片描述](https://img-blog.csdnimg.cn/d06a95d7989b4794bd7f5f02fbd6f87e.png)解法一解题思路与代码暴力解法解法一二分查找解法二双指针2 斐波那契数列题目描述解题思路与代码![请添加图片描述](https://img-blog.csdnimg.cn/d06a95d7989b4794bd7f5f02fbd6f87e.png)解法一暴力递归解法二去重递归解法三双指针迭代7 两数之和 题目描述 给定一个升序排列的整数数组 numbers 从数组中找出两个数满足相加之和等于目标数 target 。 假设每个输入只对应唯一的答案而且不可以重复使用相同的元素。 返回两数的下标值以数组形式返回 解题思路与代码 暴力解法 public int[] twoSum(int[] nums, int target) {int n nums.length;for (int i 0; i n; i) {for (int j i 1; j n; j) {if (nums[i] nums[j] target) {return new int[]{i, j};}}}return new int[0];}时间复杂度O(N的平方) 空间复杂度O(1) 哈希表将数组的值作为key存入maptarget - num作为key public int[] twoSum(int[] nums, int target) {MapInteger, Integer map new HashMapInteger, Integer();for (int i 0; i nums.length; i) {if (map.containsKey(target - nums[i])) {return new int[]{map.get(target - nums[i]), i};}map.put(nums[i], i);}return new int[0];}时间复杂度O(N) 空间复杂度O(N) 解法一二分查找 先固定一个值(从下标0开始)再用二分查找查另外一个值找不到则固定值向右移动继续二分查找 public int[] twoSearch(int[] numbers, int target) {for (int i 0; i numbers.length; i) {int low i, high numbers.length - 1;while (low high) {int mid (high - low) / 2 low;if (numbers[mid] target - numbers[i]) {return new int[]{i, mid};} else if (numbers[mid] target - numbers[i]) {high mid - 1;} else {low mid 1;}}}}时间复杂度O(N * logN) 空间复杂度O(1) 解法二双指针 左指针指向数组head右指针指向数组tailheadtail target 则tail 左移否则head右移 public int[] twoPoint(int[] numbers, int target) {int low 0, high numbers.length - 1;while (low high) {int sum numbers[low] numbers[high];if (sum target) {return new int[]{low 1, high 1};} else if (sum target) {low;} else {--high;}}return new int[]{-1, -1};}时间复杂度O(N) 空间复杂度O(1) 2 斐波那契数列 题目描述 求取斐波那契数列第N位的值。 斐波那契数列每一位的值等于他前两位数字之和。前两位固定 解题思路与代码 解法一暴力递归 public static int calculate(int num){if(num 0 ){return 0;}if(num 1){return 1;}return calculate(num-1) calculate(num-2);}解法二去重递归 递归得出具体数值之后、存储到一个集合(下标与数列下标一致)后面递归之前先到该集合查询一次如果查到则无需递归、直接取值。查不到再进行递归计算 public static int calculate2(int num){int[] arr new int[num1];return recurse(arr,num);}private static int recurse(int[] arr, int num) {if(num 0 ){return 0;}if(num 1){return 1;}if(arr[num] ! 0){return arr[num];}arr[num] recurse(arr,num-1) recurse(arr,num-2);return arr[num];} 解法三双指针迭代 基于去重递归优化集合没有必要保存每一个下标值只需保存前两位即可向后遍历得出N的值 public static int iterate(int num){if(num 0 ){return 0;}if(num 1){return 1;}int low 0,high 1;for(int i2; i num; i){int sum low high;low high;high sum;}return high;}
http://www.hkea.cn/news/14269489/

相关文章:

  • 网站选服务器文件专业商城网站建设
  • 网站的管理跟新维护有哪些免费建造网站系统
  • 专门做女性产品的网站廊坊企业建站
  • 网站部分乱码wordpress模版做网页
  • 山东省建设工会网站湖南网站设计
  • 建设行政主管部门政务网站wordpress数据库加密
  • 电子商务毕业设计设计网站建设支部品牌建设
  • 雅安市建设工程招投标网站四川展览设计公司
  • 泉州惠安网站建设wordpress如何设置404页面
  • 一个网站做无限关键词如何建立自己推广网站
  • 网站建设付款页面wordpress增加菜单
  • 怎么样做外链推广网站wordpress 免费 模板下载
  • 视觉传达毕业设计作品网站个人静态网页制作
  • 广西庆海建设发展有限公司网站成都百度推广优化创意
  • 有没有代做毕业设计的网站制作公众号流程
  • 网站建社石家庄如何更快的让百度收录网站
  • 做外贸自己公司的网站一定要吗经常使用什么对网页的布局进行控制
  • 西安网站制作工程师网站seo置顶
  • 网站建设中目录如何开无货源网店
  • 做钓鱼网站要具备什么南京哪里做网站
  • tp5.1做的网站怎样上百度做广告
  • 建设银行个人网站打不开阿里云服务器创建网站吗
  • 设计网页的步骤是什么seo网络培训班
  • 南昌网站建设方案推广国外哪些做问卷赚钱的网站
  • c 做网站简单吗网校课程
  • 南宁网站搭建浦东做营销网站
  • 网站空间商拿不回数据网页设计实验报告步骤分析怎么写
  • 店面门头设计网站福建省建设执业注册中心网站
  • 精品网站做爆款企业品牌策划设计
  • 开阳县城乡建设局网站网站建设公司排名深圳