Java二叉搜索树与数组查找的方法
导读:本文共1260字符,通常情况下阅读需要4分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 题目一解法/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){this.val=val;}*TreeNode(intval,TreeNodeleft,Tre... ...
音频解说
目录
(为您整理了一些要点),点击可以直达。题目一
解法
/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){this.val=val;}*TreeNode(intval,TreeNodeleft,TreeNoderight){*this.val=val;*this.left=left;*this.right=right;*}*}*/classSolution{intans;intpre;publicintminDiffInBST(TreeNoderoot){ans=Integer.MAX_VALUE;pre=-1;method(root);returnans;}publicvoidmethod(TreeNoderoot){if(root==null)return;method(root.left);if(pre==-1){pre=root.val;}else{ans=Math.min(ans,root.val-pre);pre=root.val;}method(root.right);}}
题目二
解法
classSolution{publicintdominantIndex(int[]nums){intf=Integer.MIN_VALUE;intfi=0;ints=Integer.MIN_VALUE;intsi=0;for(inti=0;i<nums.length;i++){if(nums[i]>f){s=f;f=nums[i];fi=i;}elseif(nums[i]>s){s=nums[i];}}if(nums.length==1)return0;if(2*s<=f)returnfi;return-1;}}
题目三
解法
classSolution{publicintrepeatedNTimes(int[]nums){intn=nums.length/2;HashMap<Integer,Integer>map=newHashMap<Integer,Integer>();for(intkey:nums){if(map.containsKey(key)){map.put(key,map.get(key)+1);if(map.get(key)==n){returnkey;}}else{map.put(key,1);}}return0;}}
题目四
解法
classSolution{publicbooleanuniqueOccurrences(int[]arr){int[]nums=newint[2000];for(inti=0;i<arr.length;i++){nums[arr[i]+1000]+=1;}HashSet<Integer>set=newHashSet<Integer>();for(inti=0;i<nums.length;i++){if(nums[i]==0)continue;if(!set.add(nums[i])){returnfalse;}else{set.add(nums[i]);}}returntrue;}}
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:
Java二叉搜索树与数组查找的方法的详细内容,希望对您有所帮助,信息来源于网络。