1. Giải thuật sắp xếp số tăng dần-tìm số lớn nhất-xóa phần tử trùng nhau trong PHP
  2. Hướng dẫn kết nối Mysql trong Nodejs
  3. Hướng dẫn tạo Captcha
  4. Hướng dẫn tạo Form Hổ trợ trực tuyến phần 1
  5. Hướng dẫn tạo Form đăng ký thành viên
  6. Hướng dẫn tạo Form đăng nhập hệ thống kết hợp với CSDL
  7. Insert,Update,Delete bằng hướng đối tượng php (phần 1)
  8. insert-update-delete Mysql bằng Nodejs
  9. Register Angularjs and Php
  10. Login remember me Angularjs and Php
  11. Login Remember bằng Php
  12. Tìm kiếm phần tử trong mảng bằng PHP
  13. Tạo giỏ hàng theo mô hình MVC
  14. Login Google using PHP

Tìm kiếm phần tử trong mảng bằng PHP

min read

Xin chào các bạn tiếp tục với bài viết trước Giải thuật sắp xếp số tăng dần-tìm số lớn nhất-xóa phần tử trùng nhau trong PHP

Mình sẽ tích hợp thêm cách để tìm kiếm mảng trong php, ở đây mình sử dụng 2 cách để tìm kiếm:

Cách 1: mình xem số lượng phẩn tử có trong mảng là bao nhiêu mình sẽ chia cho một con số nào đó và mình lấy phần nguyên, Khi có một người cần tìm 1 con số nào đó mình chi việc kiểm tra con số này nó nằm trong phân đoạn nào, thì mình chỉ việc xét ở phân đoạn đó thôi, các này bạn làm tìm kiếm nhanh.

Cách 2: mình sẽ tìm kiếm từ đầu đến cuối mảng để dò tìm số cần tìm, cách này lâu hơn cách 1 nếu số lượng mảng cần lớn càng phức tập thì mình có thể dùng cách 1 nhé.

Code cách 1:


$key =851;
$solon_nhat = $max;
$sochia_mang = 100;
$so_mang = ceil(count($data_array)/$sochia_mang);
 
if($data_array[0]<$key && $key<$data_array[$so_mang]){
$data=1;
$begin = 0;
echo "bat dau:".$begin."/".$data;
}
else if($data_array[$so_mang+1]<$key && $key<$data_array[$so_mang*2]){
$data=2;
$begin = $so_mang;
echo "bat dau:".$begin."/".$data;
 
}
else if($data_array[$so_mang*2+1]<$key && $key<$data_array[$so_mang*3]){
$data=3;
$begin = $so_mang*2;
echo "bat dau:".$begin."/".$data;
}
else if($data_array[$so_mang*3+1]<$key && $key<$data_array[$so_mang*4]){
$data=4;
$begin = $so_mang*3;
echo "bat dau:".$begin."/".$data;
}
else if($data_array[$so_mang*4+1]<$key && $key<$data_array[$so_mang*5]){
$data=5;
$begin = $so_mang*4;
echo "bat dau:".$begin."/".$data;
}
else{
$data=6;
$begin = $so_mang*5;
echo "bat dau:".$begin."/".$data;
}
 
function timkiem($begin,$data,$so_mang,$solon_nhat,$key,$sochia_mang,$data_array){
if($data==6){
$data = $sochia_mang;
 
}
for($i = $begin; $i<$so_mang*$data; $i++){
if($key==$data_array[$i]){
echo "tim thấy:".$data_array[$i];
}
}
}
timkiem($begin,$data,$so_mang,$solon_nhat,$key,$sochia_mang,$data_array);

Code cách 2:

 


//cách 2
for($i = 0; $i<1000; $i++){
if($key==$data_array[$i]){
echo "tim thấy:".$data_array[$i];
}
}
Chúc các bạn thành công!
Tag: PHP
x

Ủng hộ tôi bằng cách click vào quảng cáo. Để tôi có kinh phí tiếp tục phát triển Website!(Support me by clicking on the ad. Let me have the money to continue developing the Website!)