数组查找之顺序查找-PHP

 1 <?php
 2     //设置请求头
 3     header("content-type:text/html;charset=utf-8");
 4
 5     /*
 6         顺序查找:
 7             源:一个数组
 8             需求:查找有没有一个值,找到就返回下标,没有就返回提示
 9     */
10
11     $arr = array(1,6,3,100,9,100,0,7,-4,0);
12
13     function search(&$arr, $number1, $number2){
14
15         foreach($arr as $key => $value){
16
17             if($value == $number1){
18                 $number1_index = $key;
19                 $flag1 = true;
20                 $num1_arr[] = $key; //不止指定下标会自动填入,从0开始
21             }
22
23             else if($value == $number2){
24                 $number2_index = $key;
25                 $flag2 = true;
26                 $num2_arr[] = $key;
27             }
28         }
29
30         if($flag1 || $flag2){
31             echo $number1 . "在该数组中有" . count($num1_arr) . "个,位置是:" . var_dump($num1_arr) . ‘<br>‘;
32             echo $number2 . "在该数组中有" . count($num2_arr) . "个,位置是:" . var_dump($num2_arr) . ‘<br>‘;
33             exit;
34         }
35
36
37         echo "<script>alert(‘没有你要查找的数!!!‘)</script>";
38         exit;
39     }
40
41     search($arr, 100, 0);
42
43 ?>
时间: 2024-08-08 10:58:09

数组查找之顺序查找-PHP的相关文章

动态数组,数组初始化,数组内存释放,向数组中添加一个元素,向数组中添加多个元素,数组打印,顺序查找,二分查找,查找数组并返回地址,冒泡排序,改变数组中某个元素的值,删除一个数值,删除所有,查找含有

 1定义接口: Num.h #ifndef_NUM_H_ #define_NUM_H_ #include<stdio.h> #include<stdlib.h> /************************************************************************/ /*数组的结构体类型                                                    */ /*******************

Java中常用的查找算法——顺序查找和二分查找

Java中常用的查找算法——顺序查找和二分查找 一.顺序查找: a) 原理:顺序查找就是按顺序从头到尾依次往下查找,找到数据,则提前结束查找,找不到便一直查找下去,直到数据最后一位. b) 图例说明: 原始数据:int[] a={4,6,2,8,1,9,0,3}; 要查找数字:8 代码演示: import java.util.Scanner; /* * 顺序查找 */ public class SequelSearch { public static void main(String[] arg

一般查找 (顺序查找)

顺序查找:在一个 已知无序队列中找出 与 给定关键字相同的数的具体位置.原理是让关键字与队列中的数从第一个开始逐个比较,直到找出与给定关键字相同的数为止.复杂度为o(n). #include<stdio.h> int fun(int a[],int n,int x) { int i; for(i=0;i<n;i++) { printf("该点是%d\n",a[i]); if(a[i]==x) { puts("找到\n"); return(i); }

查找算法系列之简单查找:顺序查找、二分查找、分块查找

近期总结了各大排序算法的原理 ,并对其进行了实现,想着一并把查找算法总结了,今天就着手开始总结查找算法. 废话不多说,这篇文章从最简单的查找算法开始讲起,之后会补充复杂的二叉搜索树查找(BST)和B树,B+树查找以及哈希查找等. 顾名思义,查找就是寻找到关键字在队列中的位置,最笨的查找算法就是依次顺序比较,复杂度为O(n),但是有很多方法的复杂度可以达到O(logn)等等. 1.顺序查找 关键字与数组中的数顺序比较,时间复杂度O(n). template<class T> int OrderS

分块查找\索引顺序查找

简介: 分块查找又称索引顺序查找,它是顺序查找的一种改进方法,性能优于顺序查找. 方法描述: 将n个数据元素"按块有序"划分为m块(一般块的长度均匀,最后一块可以不满)(m<=n),每一块中的节点不必有序,但块与块之间必须"按块有序":即第一块中的关键字必须小于(或者大于)第二块中的关键字,第二块中的关键字必须小于(或者大于)第三块中的关键字,构造索引表,索引表按关键字有序排列. 如下图所示: 图示为一个索引顺序表,其中包括三个块,第一个块的其实地址为0,快内

查找算法:二分查找、顺序查找

08年9月入学,12年7月毕业,结束了我在软件学院愉快丰富的大学生活.此系列是对四年专业课程学习的回顾,索引参见:http://blog.csdn.net/xiaowei_cqu/article/details/7747205 查找算法 查找算法是在存在的序列(list) 中查找特定的目标(target),要求序列中每个记录必须与一个关键词(key)关联才能进行查找. 查找算法通常需要两个输入: 1.被查找的序列 2.要查找的关键词 查找算法的输出参数和返回值: 1.返回类型为 Error_co

查找之一顺序查找

一. 1 public class Sequential_SearchDemo01 { 2 static int[] num = {1,3,4,6}; 3 public static void main(String[] args) { 4 int key = 7; 5 boolean x = Sequential_Search(key); 6 System.out.println(x); 7 } 8 private static boolean Sequential_Search(int ke

算法-基础和查找-1.汉诺塔/2.顺序查找/3.二分查找/4.顺序查找和二分查找的比较

1.汉诺塔: 如下图所示,需要将A柱子中的所有圆盘按照从小到大的顺序移动到C柱子上,并且在移动过程中大圆盘不能在小圆盘上面 分析问题:最终希望呈现的结果是将A柱子上的盘子全部按照从小到大的顺序移动到C柱子上 1.n个盘子,将n-1视为一个整体 2.将n-1个盘子视为一个盘子从a经过c移动到b 3.将n从a移动到c 4.将n-1个盘子从b经过a移动到c 5.结束条件:n>0 代码如下: 1 def hanoi(n, a, b, c): 2 if n > 0: 3 hanoi(n-1, a, c,

每天一点算法-查找算法-顺序查找

如何在一个集合中查找一个特定元素,判断其是否存在,最简单的算法循环该集合,从起点开始查找,一个个元素去比对 假设存在集合:int [] a = {1,2,3,4,5,6,7,8,9,10} 条件:查找7在数组a中是否存在 for(int i = 0;i< a.length - 1; i ++) { if(7 == a[i]) {   //存在 } } 此算法的优点是:简单,缺点是当集合大的时候,查找的效率低,从第一个查找到最后一个 原文地址:https://www.cnblogs.com/hpz