Java經典演算法 搜尋

2021-08-21 11:08:35 字數 1147 閱讀 2461

1.無序陣列中搜尋元素

假如:定義乙個陣列:int arr = ;

在陣列中搜尋元素search=44

如果找到,列印出該元素在陣列中的下標

如果找不到,列印出-1

public

class search ;

int search = 51;

boolean find = false; // 找到則為true 沒找到則為false

// 在陣列中搜尋元素

// 如果找到,列印出該元素在陣列中的下標

// 如果找不到,列印出-1

for (int i = 0; i < arr.length; i++)

}// 判斷是否找到,如果沒找到,則輸出-1

if (!find)

}}

2.有序陣列中搜尋元素

假如:定義乙個陣列:int arr = ;

當陣列中元素已經按照從小到大排序好了,要求

在陣列中搜尋元素search=44

如果找到,列印出該元素在陣列中的下標

如果找不到,列印出-1

注意:此時如果再乙個乙個搜尋,效率就有點慢了,有沒有更好更快速的搜尋方法?

public

class search1 ;

int search = 44;

boolean find = false; // 找到則為true 沒找到則為false

// 在陣列中搜尋元素

// 如果找到,列印出該元素在陣列中的下標

// 如果找不到,列印出-1

// 定義左邊界和右邊界

int min = 0;

int max = arr.length - 1;

// 迴圈,不斷從min和max的中間搜尋

do else

max = test - 1;

min = test + 1;

}// 找不到,退出迴圈的條件

if (min > max)

} while (true);

// 判斷是否找到,找不到則需要輸出-1

if (!find)

}}

java 經典排序演算法

1 氣泡排序 bubble sort 最簡單的排序方法是氣泡排序方法。這種方法的基本思想是,將待排序的元素看作是豎著排列的 氣泡 較小的元素比較輕,從而要往上浮。在氣泡排序演算法中我們要對這個 氣泡 序列處理若干遍。所謂一遍處理,就是自底向上檢查一遍這個序列,並時刻注意兩個相鄰的元素的順序是否正確。...

經典搜尋演算法 深度優先搜尋 暴力搜尋

訓練題目暴力搜尋題目描述 現有長度為n的數列a和整數m。請編寫乙個程式,判斷a中任意幾個元素相加是否能得到m。a中每個元素只能使用一次。數列a以及用作問題的q個mi由外界輸入,請對每個問題輸出yes或no。輸入 第一行輸入n,第二行輸入代表a的n個整數,第三行輸入q,第四行輸入q個整數mi。輸出 輸...

經典排序演算法(Java版)

1 氣泡排序 bubble sort 最簡單的排序方法是氣泡排序方法。這種方法的基本思想是,將待排序的元素看作是豎著排列的 氣泡 較小的元素比較輕,從而要往上浮。在氣泡排序演算法中我們要對這個 氣泡 序列處理若干遍。所謂一遍處理,就是自底向上檢查一遍這個序列,並時刻注意兩個相鄰的元素的順序是否正確。...