PHP数据结构(1) 二分查找
二分查找的基本思路是将一个有序数组取中间的那个值和所查找的值进行大小比较,当所查找的值大于数组的中间值时,即说明该有序数组中间值前的所有值都小于该查找的值,所以可以将该数组中间值前的所有值排除,再从该数组中间值到该数组末尾的值中继续查找所需值,其代码实现如下:
//二分查找
function bin_search($array,$search){
$low=0;
$height=count($array)-1;//获取数组长度
while($low$mid=floor(($low+$height)/2);//获取中间数,强制转换为floor类型,防止出错
if($array[$mid]==$search){
return $mid+1;//返回已找到的序号
}else if($array[$mid]//当中间值小于所查值时,则$mid左边的值都小于$search,此时要将$mid赋值给$low
$low=$mid+1;
}else if($array[$mid]>$search){
//此时说明中间值大于所查值,则$mid右边的所有值都大于$search,此时要将$mid赋值给$height
$height=$mid-1;
}
return "查找失败";//查找失败,数组中不存在该值
}
}
$arr=array(1,4,6,33,75,88,89,93);
echo bin_search($arr,33);
echo bin_search($arr,66);
?>
以上就介绍了PHP数据结构(1) 二分查找,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Fungsi pertengahan digunakan untuk memintas subrentetan panjang tertentu daripada rentetan Kaedah khusus ialah: 1. Fungsi pertengahan dalam VB, sintaksnya ialah "Mid(string, start[, length])"; fungsi dalam JavaScript, Sintaks "string.slice(startIndex[, endIndex])"; 3. Fungsi pertengahan dalam Python, sintaks "string[startIndex:endIndex]".

Tajuk: Contoh menggunakan fungsi Array.Sort untuk mengisih tatasusunan dalam Teks C#: Dalam C#, tatasusunan ialah struktur data yang biasa digunakan dan operasi pengisihan tatasusunan selalunya diperlukan. C# menyediakan kelas Array, yang mempunyai kaedah Isih untuk menyusun tatasusunan dengan mudah. Artikel ini akan menunjukkan cara menggunakan fungsi Array.Sort dalam C# untuk mengisih tatasusunan dan memberikan contoh kod khusus. Pertama, kita perlu memahami penggunaan asas fungsi Array.Sort. Susunan.Jadi

Apabila pengaturcaraan dalam PHP, kita selalunya perlu menggabungkan tatasusunan. PHP menyediakan fungsi array_merge() untuk melengkapkan penggabungan tatasusunan, tetapi apabila kunci yang sama wujud dalam tatasusunan, fungsi ini akan menimpa nilai asal. Untuk menyelesaikan masalah ini, PHP juga menyediakan fungsi array_merge_recursive() dalam bahasa, yang boleh menggabungkan tatasusunan dan mengekalkan nilai kunci yang sama, menjadikan reka bentuk program lebih fleksibel. array_merge

Dalam PHP, terdapat banyak fungsi tatasusunan berkuasa yang boleh menjadikan operasi tatasusunan lebih mudah dan lebih pantas. Apabila kita perlu menggabungkan dua tatasusunan ke dalam tatasusunan bersekutu, kita boleh menggunakan fungsi array_combine PHP untuk mencapai operasi ini. Fungsi ini sebenarnya digunakan untuk menggabungkan kekunci satu tatasusunan sebagai nilai tatasusunan lain ke dalam tatasusunan bersekutu baharu. Seterusnya, kami akan menerangkan cara menggunakan fungsi array_combine dalam PHP untuk menggabungkan dua tatasusunan menjadi tatasusunan bersekutu. Ketahui tentang array_comb

Menurut berita pada 31 Januari, TheBrowserCompany baru-baru ini mengeluarkan aplikasi baharu yang dipanggil ArcSearch, yang menggunakan sepenuhnya teknologi AI dan bertujuan untuk membantu pengguna mendapatkan maklumat yang mereka perlukan dengan lebih cepat dan mudah. Ciri teras aplikasi ArcSearch ialah fungsi "Browseforme", yang dikuasakan oleh model daripada syarikat seperti OpenAI. Apabila pengguna mencari, fungsi ini secara automatik boleh membaca sekurang-kurangnya enam halaman web yang berkaitan, menyepadukan dan meringkaskan maklumat ini melalui teknologi AI, dan akhirnya memaparkannya kepada pengguna pada halaman yang baru direka bentuk. Halaman ini bukan sahaja mengandungi maklumat yang berkaitan dengan kata kunci carian, tetapi juga membahagikan kandungan kepada bahagian yang berbeza untuk menjadikannya lebih jelas untuk pengguna.

Penjelasan terperinci tentang sifat dimensi CSS: tinggi dan lebar Dalam pembangunan bahagian hadapan, CSS ialah bahasa definisi gaya yang berkuasa. Antaranya, ketinggian dan lebar ialah dua atribut dimensi paling asas, digunakan untuk menentukan ketinggian dan lebar elemen. Artikel ini akan menganalisis kedua-dua sifat ini secara terperinci dan memberikan contoh kod khusus. 1. Atribut ketinggian Atribut ketinggian digunakan untuk menentukan ketinggian sesuatu elemen. Anda boleh menggunakan piksel, peratusan atau

mid格式是一种音频格式,是由MIDI继承而来,MID文件并不是一段录制好的声音,而是记录声音的信息,然后再告诉声卡如何再现音乐的一组指令;一个mid文件主要包括两部分,分别是标头数据和音轨数据。

Dalam pengaturcaraan PHP, tatasusunan ialah struktur data yang sangat penting yang boleh mengendalikan sejumlah besar data dengan mudah. PHP menyediakan banyak fungsi berkaitan tatasusunan, array_fill() adalah salah satu daripadanya. Artikel ini akan memperkenalkan secara terperinci penggunaan fungsi array_fill(), serta beberapa petua dalam aplikasi praktikal. 1. Gambaran keseluruhan fungsi array_fill() Fungsi array_fill() adalah untuk mencipta tatasusunan nilai yang sama dengan panjang yang ditentukan. Secara khusus, sintaks fungsi ini ialah
