当前位置: 首页 > news >正文

苏州新公司网站建设游戏开发和网站开发哪个好玩

苏州新公司网站建设,游戏开发和网站开发哪个好玩,网页设计师培训内容,南宁模板开发建站各种查找算法的效率 顺序查找 一般顺序表(没有顺序,随机排列) 成功时平均查找长度: 1 . . . n n n 1 2 \frac{1...n}{n}\frac{n1}{2} n1...n​2n1​失败时平均查找长度: n n n 有序顺序表(按照递增或递…

各种查找算法的效率

  1. 顺序查找
    • 一般顺序表(没有顺序,随机排列)
      • 成功时平均查找长度: 1 + . . . + n n = n + 1 2 \frac{1+...+n}{n}=\frac{n+1}{2} n1+...+n=2n+1
      • 失败时平均查找长度: n n n
    • 有序顺序表(按照递增或递减排列)
      在这里插入图片描述
      • 成功时平均查找长度: 1 + . . . + n n = n + 1 2 \frac{1+...+n}{n}=\frac{n+1}{2} n1+...+n=2n+1
      • 失败时平均查找长度: 1 + 2 + . . . + n + n n + 1 = n 2 + n n + 1 \frac{1+2+...+n+n}{n+1}=\frac{n}{2}+\frac{n}{n+1} n+11+2+...+n+n=2n+n+1n
  2. 折半查找(二分查找)
    • 用折半查找法找到给定值的比较次数不会超过树的高度(n个元素的树高为 ⌈ l o g 2 ( n + 1 ) ⌉ \lceil log_2(n+1)\rceil log2(n+1)⌉
    • 成功时的平均查找长度: A S L = 1 n ( 1 × 1 + 2 × 2 + 3 × 4 + . . . + h × 2 h − 1 = n + 1 n l o g 2 ( n + 1 ) − 1 ≈ l o g 2 ( n + 1 ) − 1 ASL=\frac{1}{n}(1\times 1+2\times 2+3\times 4+...+h\times 2^{h-1}=\frac{n+1}{n}log_2(n+1)-1\approx log_2(n+1)-1 ASL=n1(1×1+2×2+3×4+...+h×2h1=nn+1log2(n+1)1log2(n+1)1
    • 折半查找的时间复杂度为 O ( l o g 2 n ) O(log_2n) O(log2n)
  3. 分块查找(索引顺序查找)
    • 平均查找长度: A S L = L I + L S ASL=L_I+L_S ASL=LI+LS L I L_I LI为索引查找的平均查找长度, L S L_S LS为块内查找的平均查找长度)
      • 如将长度为n的查找表均匀地分成b块,每块有s个记录,在等概率情况下,若在块内和索引表中均采用顺序查找,则平均查找长度为 A S L = L I + L S = b + 1 2 + s + 1 2 = s 2 + 2 s + n 2 s ASL=L_I+L_S=\frac{b+1}{2}+\frac{s+1}{2}=\frac{s^2+2s+n}{2s} ASL=LI+LS=2b+1+2s+1=2ss2+2s+n。可见若 s = n s=\sqrt{n} s=n ,则平均查找长度取最小值 n + 1 \sqrt{n}+1 n +1
  4. 树型查找
    • 二叉排序树(主要取决于树的高度)
      • 若二叉排序树的左右子树高度之差不超过1(即平衡二叉树),则平均查找长度为 O ( l o g 2 n ) O(log_2{n}) O(log2n)
      • 若二叉排序树是一个只有左(右)孩子的单支树,则平均查找长度为 O ( n ) O(n) O(n)
    • 平衡二叉树(查找过程与二叉排序树相同)
      • 平均查找长度为 O ( l o g 2 n ) O(log_2n) O(log2n)
        • 因为含有n个节点的平衡二叉树的最大深度为 O ( l o g 2 n ) O(log_2n) O(log2n)
    • 红黑树
      • 平均查找长度为 O ( l o g 2 n ) O(log_2n) O(log2n)
    • B树和B+树
      请添加图片描述
      请添加图片描述
  5. 散列表
    虽然散列表在关键字与记录的存储位置之间建立了直接映像,但由于冲突的产生,使得散列表的查找过程仍然是一个给定值和关键字进行比较的过程。因此仍需以平均查找长度作为衡量散列表的查找效率的度量。
    散列表的查找效率取决于三个因素:散列函数、冲突处理的方法和装填因子。
    直观的看, α \alpha α越大,表示装填的记录越满,发生冲突的可能性越大。

折半查找(二分查找)与二叉排序树的区别

二叉排序树与二分查找(折半查找)的查找过程相似,平均时间性能差不多。不同点如下:

  1. 唯一性:二分查找的判定树唯一,而二叉排序树随着关键字插入顺序不同可能生成不同的二叉排序树
  2. 插入和删除:二分查找的对象是有序顺序表,若有插入和删除节点的操作,所花的代价是 O ( n ) O(n) O(n);二叉排序树则无需移动节点,只需修改指针即可完成插入和删除操作
  3. 适用于动态还是静态:当有序表是静态查找表时,宜用顺序表作为其存储结构,采用二分查找实现找操作;若有序表是动态查找表,应选择二叉排序树作为其逻辑结构

平衡二叉树和红黑树的区别

二者的查、插、删的时间复杂度都是 O ( l o g 2 n ) O(log_2n) O(log2n),区别如下:

  1. 平衡二叉树的插入和删除很容易破坏平衡特性,故插/删后大都需要调整树的形态(计算平衡因子+找到最小不平衡树+LL/RR/LR/RL),这样一来时间开销就很大;而红黑树由于其特性,很多时候插入删除后并不会破坏红黑特性,即便需要调整一般也都可以在常数级时间内完成
  2. 即虽然二者的插、删、查的时间复杂度都是 O ( l o g 2 n ) O(log_2n) O(log2n),但实际上红黑树的插入和删除性能更好一点,平衡二叉树的查找性能更好一点
  3. 使用场景:平衡二叉树适用于以查为主、很少插入/删除的场景;红黑树适用于频繁插入、删除的场景,实用性更强

B树和B+树的区别

二者相同点是:除根节点外,最少 ⌈ m 2 ⌉ \lceil\frac{m}{2}\rceil 2m个分叉(确保节点不要太空)。任何一个节点的子树都要一样高(确保绝对平衡)

-m阶B树m阶B+树
类比二叉查找树的进化 --> m叉查找树分块查找的进化 --> 多级分块查找
关键字与分叉n个关键字对应n+1个分叉(子树)n个关键字对应n个分叉
节点包含的信息所有节点中都包含记录的信息只有最下层叶子节点才包含记录的信息(每个节点能存的信息更多,因此可以使树更矮),且叶节点包含所有的关键字
查找方式不支持顺序查找。查找成功时,可能停在任何一层节点,查找速度不稳定支持顺序查找。查找成功或失败都会到达最下一层节点,查找速度稳定
http://www.yayakq.cn/news/917116/

相关文章:

  • 软件网站建设游戏编程软件
  • 广州网上注册公司网站应用中心下载
  • 公司官方网站建设费计入什么科目石家庄市里的网站公司
  • 设计型网站自带优化wordpress页面加速
  • 广州市建设招标管理办公室网站中山学文网页设计培训学校
  • 免费地图制作网站浙江省水利建设行业协会网站
  • 二维码生成器网站排名第一的手机清理软件
  • 网站超市安装网站的逻辑结构
  • 哪些公司网站做的好西安网络优化大的公司
  • 如何做网站的信息分类上海网站建设免费推荐
  • 南昌网站建设策划wordpress批量建分类
  • 网站平台建设思路制造网站建设哪家好
  • 国内网站开发的主流技术邢台设计公司
  • 网站cms在线识别wordpress123页
  • 网站维护中是什么意思wordpress主题怎么设置
  • 郑州网站建设 易云互联如何设网站主页
  • 媒体发稿网站开发大气点的公司名字大全
  • 站长 网站ip推广营销策划方案
  • 吉安网站推广做网站被骗3000
  • 合肥网页网站制作成都系统开发
  • pc网站手机版开发深圳微信公众平台
  • 长沙天津网站建设eclipse tomcat 网站开发
  • 物流网站制作怎么做深圳 电子商务网站开发
  • 在哪里学做网站网站缩放代码
  • 杭州网站建设岗位薪资西安企业自助建站
  • 郑州网站建设乙汉狮网络吉安高端网站建设公司
  • 做网站用的主机多少合适优化seo是什么意思
  • 网站文章推广百度小程序开发工具下载
  • 网站开发流程图解释含义济南网站建设 选搜点o
  • 怎么在网上找接单做网站的公司潍坊网站建设诸城高密