在Java中對元素進行排序和搜尋
排序和搜尋是我們可以對陣列執行的基本操作。排序意味著按升序或降序重新排列給定列表或陣列的元素,而搜尋意味著在列表中尋找元素或其索引。
儘管有多種演算法可用於執行這些操作,但在本文中,我們將使用其中的一些演算法來對 java 中的元素進行排序和搜尋。我們將一一研究它們。
方法一:使用陣列的內建方法
在本節中,我們將討論以下有助於對陣列中的元素進行排序和搜尋的方法。
sort() - 它是 Arrays 類別的靜態方法,按升序對作為參數傳遞的陣列進行排序。
文法
Arrays.sort(nameOfarray);
binarySearch() - 它也是 Arrays 類別的靜態方法。它接受兩個參數,第一個是需要搜尋其元素的數組,第二個是我們需要在該數組中尋找的元素。
它傳回作為參數傳遞的元素的索引號。
文法
Arrays.binarySearch(nameOfarray, element);
範例
import java.util.*; public class Srch { public static void main(String args[]) { int araylist[] = {9, 3, 56, 0, -2, -6, 2, 1, 80}; System.out.print("The given unsorted list: "); // for each loop that prints the original array for (int print : araylist) { System.out.print(print + " "); } Arrays.sort(araylist); // method to sort given array System.out.println(); System.out.print("The newly sorted list: "); // for each loop that prints the newly sorted array for (int print : araylist) { System.out.print(print + " "); } System.out.println(); // method to search given element int position = Arrays.binarySearch(araylist, 1); if(position > -1) { System.out.print("Element is available at index: " + position); } else { System.out.print("Element is not available"); } } }
輸出
The given unsorted list: 9 3 56 0 -2 -6 2 1 80 The newly sorted list: -6 -2 0 1 2 3 9 56 80 Element is available at index: 3
方法 2:使用我們的自訂邏輯
使用冒泡排序進行排序
演算法
步驟 1 - 首先,宣告並初始化一個名為「araylist」的陣列和一個名為「temp」的整數變數來暫時儲存移位的元素。
步驟 2 - 使用兩個 for 迴圈將第 i 個位置元素與第 i 1 個元素進行比較。在第二個 for 迴圈內建立一個 if 區塊來檢查哪個元素較大,然後我們執行移位操作以升序重新排列這些元素。
第 3 步 - 現在使用每個循環,我們將列印排序後的陣列。
範例
public class Bubble { public static void main(String[] args) { int araylist[] = {9, 3, 56, 0, 2, 1, 80}; int temp = 0; System.out.print("The given unsorted list: "); for (int print : araylist) { System.out.print(print + " "); } for (int i = 0; i < araylist.length; i++) { for (int j = i+1; j < araylist.length; j++) { if(araylist[i] > araylist[j]) { temp = araylist[i]; araylist[i] = araylist[j]; araylist[j] = temp; } } } System.out.println(); System.out.print("The newly sorted list: "); for (int print : araylist) { System.out.print(print + " "); } } }
輸出
The given unsorted list: 9 3 56 0 2 1 80 The newly sorted list: 0 1 2 3 9 56 80
使用線性搜尋進行搜尋
#演算法
第1 步 - 首先,宣告並初始化一個名為「araylist」的數組和一個名為「searchElem」的整數變量,我們將在該數組中搜尋該變量。我們還需要兩個整數變數“isFound”和“locate”。
第 2 步 - 現在,建立一個 for 循環,該循環將運行到陣列的長度。在此循環中,使用 if 區塊檢查數組中是否存在「searchElem」。如果可用,則將其索引儲存在變數「locate」中,並將變數「isFound」增加到 1。
第 3 步 - 接下來,我們建立一個 if else 區塊來檢查變數「isFound」是否增加到 1。如果它等於 1,則表示找到了元素,我們將返回索引。如果不是,則會執行 else 區塊中的語句。
範例
public class Linear { public static void main(String[] args) { int araylist[] = {9, 3, 56, 0, 2, 1, 80}; int searchElem = 0; int isFound = 0; int locate = 0; for(int i = 0; i < araylist.length; i++) { if(searchElem == araylist[i]) { isFound = 1; locate = i; } } if(isFound == 1) { System.out.print("Element is available at index: " + locate); } else { System.out.print("Element is not available"); } } }
輸出
Element is available at index: 3
結論
在本文中,我們討論瞭如何對陣列元素進行排序並執行搜尋操作來尋找該陣列的特定元素。我們可以使用名為「sort()」的內建方法或任何排序和搜尋演算法。
以上是在Java中對元素進行排序和搜尋的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

公司安全軟件導致部分應用無法正常運行的排查與解決方法許多公司為了保障內部網絡安全,會部署安全軟件。 ...

系統對接中的字段映射處理在進行系統對接時,常常會遇到一個棘手的問題:如何將A系統的接口字段有效地映�...

在使用MyBatis-Plus或其他ORM框架進行數據庫操作時,經常需要根據實體類的屬性名構造查詢條件。如果每次都手動...

將姓名轉換為數字以實現排序的解決方案在許多應用場景中,用戶可能需要在群組中進行排序,尤其是在一個用...

在使用IntelliJIDEAUltimate版本啟動Spring...

Java對象與數組的轉換:深入探討強制類型轉換的風險與正確方法很多Java初學者會遇到將一個對象轉換成數組的�...

電商平台SKU和SPU表設計詳解本文將探討電商平台中SKU和SPU的數據庫設計問題,特別是如何處理用戶自定義銷售屬...

在使用TKMyBatis進行數據庫查詢時,如何優雅地獲取實體類變量名以構建查詢條件,是一個常見的難題。本文將針...
