剑指offer计划4(查找算法简单版)---java
2021/9/4 14:06:03
本文主要是介绍剑指offer计划4(查找算法简单版)---java,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.1、题目1
剑指 Offer 03. 数组中重复的数字
1.2、解法
摊牌了,我是hash表忠实粉丝,好多题用hash都简单很多,
用的舒服,写的放心~
1.3、代码
class Solution { public int findRepeatNumber(int[] nums) { Set h = new HashSet(); for(int i=0;i<nums.length;i++){ if(h.contains(nums[i])) return nums[i]; h.add(nums[i]); } return nums[0]; } }
2.1、题目2
剑指 Offer 53 - I. 在排序数组中查找数字 I
2.2、解法
今天的题,~ememmmmmm,有点太过简单了
当然,也可以用 二分查找。但是哪个你弄不好还得搞半天,
简单暴力,最为致命。
哈哈哈哈哈哈,我懒得搞啥了,这种东西简单的写法就行。
2.3、代码
class Solution { public int search(int[] nums, int target) { int n=0;; for(int i = 0 ;i<nums.length;i++){ if(nums[i]==target) n++; } return n; } }
3.1、题目3
剑指 Offer 53 - II. 0~n-1中缺失的数字
3.2、解法
这题就更简单了,直接循环
创个数组,查哪个为false就是没有的数字
不要学我这么写,最好还是用二分,
懒得整二分查找了~~~~~~~~~~~~~~~~~~,hhhhhhh
3.3、代码
class Solution { public int missingNumber(int[] nums) { boolean []b = new boolean[nums.length+1]; for(int i=0;i<nums.length;i++){ b[nums[i]]=true; } for(int i=0;i<b.length;i++){ if(b[i]==false) return i; } return -1; } }
这篇关于剑指offer计划4(查找算法简单版)---java的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-19JAVA 企业级项目入门:从零开始的实战指南
- 2024-09-19Java 企业级项目入门:从零基础到实战的进阶之路
- 2024-09-19Java 企业级项目入门:从零开始的实战指南
- 2024-09-18Java OA系统入门:从基础到实践
- 2024-09-18Java OA系统入门:从零开始的简单教程
- 2024-09-18JAVA OA系统入门:从零开始的实战指南
- 2024-09-18Java Web项目入门:快速搭建你的第一个Web应用
- 2024-09-18JAVA web项目入门:从零基础到实战的小白指南
- 2024-09-18Java Web项目入门:从零开始的轻量级教程
- 2024-09-18Java Web项目入门:快速搭建与基础实践