劍指Offer之Java算法習(xí)題精講二叉搜索樹與數(shù)組查找
題目一
數(shù)組題——查找數(shù)組中交集
根據(jù)給定的兩個數(shù)組按照指定條件查找它們的交集并返回
具體題目如下
解法
class Solution { public int[] intersection(int[] nums1, int[] nums2) { int[] a = new int[1000]; HashSet<Integer> set = new HashSet<Integer>(); for(int i = 0;i<nums1.length;i++){ if(a[nums1[i]]==0){ a[nums1[i]]=1; } } for(int i = 0;i<nums2.length;i++){ if(a[nums2[i]]!=0){ set.add(nums2[i]); } } int[] w = new int[set.size()]; int p = 0; Iterator<Integer> iterator = set.iterator(); while (iterator.hasNext()){ w[p] = iterator.next(); p++; } return w; } }
題目二
數(shù)組題——查找數(shù)組中交集
根據(jù)給定的兩個數(shù)組按照指定條件查找它們的交集并返回
具體題目如下
解法
class Solution { public int[] intersect(int[] nums1, int[] nums2) { int[] a = new int[1001]; ArrayList<Integer> list = new ArrayList<Integer>(); for(int i = 0;i<nums1.length;i++){ a[nums1[i]]+=1; } for(int i = 0;i<nums2.length;i++){ if(a[nums2[i]]>0){ list.add(nums2[i]); a[nums2[i]]--; } } int[] w = new int[list.size()]; for(int j = 0;j<w.length;j++){ w[j] = list.get(j); } return w; } }
題目三
概率題——猜數(shù)字
根據(jù)給定的猜數(shù)字規(guī)則編寫函數(shù)比較猜數(shù)大小
具體題目如下
解法
/** * Forward declaration of guess API. * @param num your guess * @return -1 if num is lower than the guess number * 1 if num is higher than the guess number * otherwise return 0 * int guess(int num); */ public class Solution extends GuessGame { public int guessNumber(int n) { int left = 1; int right = n; while(left<=right){ int mid = left+(right-left)/2; if(guess(mid)==-1){ right = mid-1; } if(guess(mid)==1){ left = mid+1; } if(guess(mid)==0){ return mid; } } return 0; } }
到此這篇關(guān)于劍指Offer之Java算法習(xí)題精講二叉搜索樹與數(shù)組查找的文章就介紹到這了,更多相關(guān)Java 二叉搜索樹內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 劍指Offer之Java算法習(xí)題精講鏈表與數(shù)組專項訓(xùn)練
- 劍指Offer之Java算法習(xí)題精講鏈表與二叉樹專項訓(xùn)練
- 劍指Offer之Java算法習(xí)題精講二叉樹的構(gòu)造和遍歷
- 劍指Offer之Java算法習(xí)題精講二叉樹專項訓(xùn)練
- 劍指Offer之Java算法習(xí)題精講數(shù)組與二叉樹
- 劍指Offer之Java算法習(xí)題精講鏈表與字符串及數(shù)組
- 劍指Offer之Java算法習(xí)題精講數(shù)組與字符串題
- 劍指Offer之Java算法習(xí)題精講字符串與二叉搜索樹
- 劍指Offer之Java算法習(xí)題精講數(shù)組查找與字符串交集
相關(guān)文章
Java?事務(wù)注解@Transactional回滾(try?catch、嵌套)問題
這篇文章主要介紹了Java?@Transactional回滾(try?catch、嵌套)問題,Spring?事務(wù)注解?@Transactional?本來可以保證原子性,如果事務(wù)內(nèi)有報錯的話,整個事務(wù)可以保證回滾,但是加上try?catch或者事務(wù)嵌套,可能會導(dǎo)致事務(wù)回滾失敗2022-08-08Spring Security+Spring Data Jpa如何進行安全管理
這篇文章主要介紹了Spring Security+Spring Data Jpa如何進行安全管理,幫助大家更好的理解和學(xué)習(xí)Spring Security框架,感興趣的朋友可以了解下2020-09-09基于Java+SpringBoot實現(xiàn)人臉識別搜索
人臉識別搜索技術(shù)作為現(xiàn)代計算機視覺領(lǐng)域的重要研究方向之一,已經(jīng)在多個領(lǐng)域展現(xiàn)出巨大的應(yīng)用潛力,隨著信息技術(shù)的飛速發(fā)展,人臉識別搜索在多個領(lǐng)域得到了廣泛關(guān)注和應(yīng)用,本文旨在探討人臉識別搜索技術(shù)的背景、原理以及其在實際應(yīng)用中的意義和挑戰(zhàn)2023-08-08spring mvc+localResizeIMG實現(xiàn)HTML5端圖片壓縮上傳
這篇文章主要為大家詳細(xì)介紹了使用spring mvc+localResizeIMG實現(xiàn)HTML5端圖片壓縮上傳,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04