把数组中元素按某种顺序排列的过程叫做查找?
把数组按照某种顺序排列的过程称为排序,而不是称之查找,查找是我们在数组的元素中寻找某个元素的位置,这样的过程称为查找。
排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。
在一些(有序的/无序的)数据元素中,通过一定的方法找出与给定关键字相同的数据元素的过程叫做查找。也就是根据给定的某个值,在查找表中确定一个关键字等于给定值的记录或数据元素。
扩展资料:
计算机中主要的查找算法:
1、顺序查找顺序查找的思想是,将查找值顺序逐个与结点值进行比较,相等即为查找成功,否则查找失败。
2、二分查找,二分查找的基本思想,首先将结点按关键字排序,其次将查找值与中间位置的值比较,相等,查找成功;不等,则中间数据大于或小于查找值,无论怎样查找将在一半的数据中查找。
3、二叉排序树查找,因为二叉排序树的左子树若不为空则左子树的所有结点的值均小于它的根结点的值,而右子树若不为空,则右子树的所有结点的值均不小大于它的根结点的值。
4、哈希(Hash)表,以上讲的查找方法基于比较的,查找效率依赖比较次数,其实理想的查找希望不经比较,一次存取便能得到所查记录,那就必须在记录的存储位置和它的关键字之间建立一个确定的对应关系f,这样查找k时,只要根据这个对应关系f找到给定值k的像f(k)。
这种对应关系f叫哈希函数。按这种思想建立的表叫哈希表(也叫散列表)。
哈希表存取方便但存储时容易冲突:即不同的关键字可以对应同一哈希地址。如何确定哈希函数和解决冲突是关键。
哈希函数的构造方法:直接定址法:H(k)=k 或H(k)=a*k+b(线形函数)、数字分析法:取关键字的若干数位组成哈希地址、平方取中法:关键字平方后取中间几位数组成哈希地址。
折叠法:将关键数字分割成位数相同的几部分(最后一部分的位数可以不同)然后取几部分的叠加和(舍去进位)作为哈希地址
参考资料来源:百度百科-查找
组合数,从n个中取m个,相当于不排,就是n!/[(n-m)!m!]