Java實現(xiàn)的快速查找算法示例
本文實例講述了Java實現(xiàn)的快速查找算法。分享給大家供大家參考,具體如下:
快速查找算法,可以根據(jù)想要找的是第幾個大的數(shù),每次循環(huán)都能固定下來一個數(shù)在數(shù)組完整排完序之后的位置,每次循環(huán)都能定一個數(shù)的位置,如果當(dāng)前固定的數(shù)的位置和用戶要找的第幾個數(shù)匹配,則就直接返回。例如我要找第二大的數(shù),如果循環(huán)一次固定的數(shù)的下標(biāo)是1,那就是當(dāng)前需要找的數(shù)。
代碼如下:
// 快速查找算法 public static int quickSelect(int[] arr, int selectIndex) { int s = 0; int i = s+1; while(i < arr.length) { if(arr[i] < arr[0]) { int t = arr[s+1]; arr[s+1] = arr[i]; arr[i] = t; s += 1; i = s+1; continue; } i++; } // i找到最后之后將下表為s的值和第一個值交換 int temp = arr[0]; arr[0] = arr[s]; arr[s] = temp; if(selectIndex-1 == s) { return arr[s]; }else { // 將數(shù)組不需要的切掉 用后一部分去回調(diào) int arrs[] = new int[arr.length - s]; for(int j = s; j < arr.length; j++) { arrs[j-s] = arr[j]; } quickSelect(arrs, selectIndex); } return 0; }
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
- java實現(xiàn)二分法查找出數(shù)組重復(fù)數(shù)字
- java字符串常用操作方法(查找、截取、分割)
- Java字符串查找的三種方式
- 如何查找YUM安裝的JAVA_HOME環(huán)境變量詳解
- java數(shù)據(jù)結(jié)構(gòu)之二分查找法 binarySearch的實例
- Java利用反射如何查找使用指定注解的類詳解
- 詳解Java數(shù)據(jù)結(jié)構(gòu)和算法(有序數(shù)組和二分查找)
- Java實現(xiàn)的兩種常見簡單查找算法示例【快速查找與二分查找】
- java算法之二分查找法的實例詳解
- Java查找不重復(fù)無序數(shù)組中是否存在兩個數(shù)字的和為某個值
相關(guān)文章
IDEA無法打開Marketplace的三種解決方案(推薦)
這篇文章主要介紹了IDEA無法打開Marketplace的三種解決方案(推薦),本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11Hadoop MultipleOutputs輸出到多個文件中的實現(xiàn)方法
這篇文章主要介紹了 Hadoop MultipleOutputs輸出到多個文件中的實現(xiàn)方法的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下2017-10-10MyBatis insert語句返回主鍵和selectKey標(biāo)簽方式
這篇文章主要介紹了MyBatis insert語句返回主鍵和selectKey標(biāo)簽方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09IDEA?Error:java:無效的源發(fā)行版:13的解決過程
之前用idea運行時,也會出現(xiàn)這種情況,后面通過網(wǎng)上的資料解決了這個問題,下面這篇文章主要給大家介紹了關(guān)于IDEA?Error:java:無效的源發(fā)行版:13的解決過程,需要的朋友可以參考下2023-01-01Java之a(chǎn)pi網(wǎng)關(guān)斷言及過濾器案例講解
這篇文章主要介紹了Java之a(chǎn)pi網(wǎng)關(guān)斷言及過濾器案例講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下2021-08-08