com.atguigu.exerパッケージ; / * * 1.リニア検索 *あなたが目的の要素を見つけるまで、起動プロセスの終わりから各要素をチェックし、列に与えられた値を検索します。 *リニアサーチは、シーケンシャルサーチと呼ばれています。 * 2.検索二分法 *大量のデータのための二分法を見て、そのデータは良い順にする必要があります。 * / パブリッククラスArrayTest1 { 公共の静的な無効メイン(文字列[] args){ //線形1.見つける //文字列配列 のString [] arrStr =新しいString [ ] { "AA"、 "BB"、 "CC"を、 "DD"、 "EE"}; //反復 のために(INT I = 0; I <arrStr.length; Iは++){ System.out.printの(arrStr [I] + ""); } のSystem.out.println (); 文字列objStr = "BB"; //宛先文字列 ブールフラグ= TRUE; //同一 見出さ//指定された要素 I;のためには、(i = 0 int型 <arrStrを。長さ; I ++){ (objStr.equals(arrStr [I])){IF ブールFLAG1 =真; //識別 System.out.println(「指定された要素の場所は見つけ:」+ I)、 フラグにfalseに=; BREAK; } } //指定された要素が見つからない (フラグに){IF のSystem.out.printlnは(「指定された要素を見つけられませんでした「); } のSystem.out.println(); //バイナリ検索2(提供:求め数が順序付けされる) //整数配列 INT [] arrNum =新しいINT [ ] {12、24、 36、48、56、76、88、94}; //反復 のために(I = 0にint型、I <arrNum.length; Iは++){ System.out.printの(arrNum [I]は+ ""); } システム.out.println(); int型objNum = 48; //数を検索する int型のヘッド= 0; //ヘッダインデックス INT端= arrNum.length - 1; //エンド指数 一方、(ヘッド<=エンド){ int型= MID(エンドヘッド+)/ 2; //インデックスの中間位置 (objNum == arrNum [中間]であれば ){// 検索 するSystem.out.println( "指定された要素の場所は見つけ:" + MID)、 FLAG1 = falseに; //要素が見つかった場合、変更FLAG1の BREAKを; <(arrNum [MID] {}他objNum)IF 。エンド= MID - 1; }他{objNum //> arrNum [MID] ヘッドを1 + = MID; } } //(無変化FLAG1)見つかりませんではない (FLAG1 IF ){ のSystem.out.println() "指定された要素を見つけられませんでした"; } } }