欢迎来到天天文库
浏览记录
ID:29968225
大小:22.47 KB
页数:19页
时间:2018-12-25
《java数据结构算法时间复杂度总结》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划java数据结构算法时间复杂度总结 Java数据结构和算法 第0讲综述 参考教材:Java数据结构和算法,[美]Robertlafore 1.数据结构的特性 数据结构数组有序数组栈队列链表二叉树红-黑树2-3-4树哈希表堆图 优点 比无序的数组查找快提供后进先出方式的存取提供先进先出方式的存取插入快,删除快 查找、插入、删除都快;树总是平衡的查找、插入、删除都快;树总是平衡的;类似的
2、树对磁盘存储有用 如果关键字已知,则存储极快;插入快插入、删除快;对大数据项的存取很快对现实世界建模 缺点 删除和插入慢,大小固定存取其他项很慢存取其他项很慢查找慢算法复杂算法复杂 删除慢,如果不知道关键字则存储很慢,对存储空间使用不充分对其他数据项存取慢有些算法慢且复杂 插入快;如果知道下标,可以非常快地存取查找慢,删除慢,大小固定目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新
3、项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 查找、插入、删除都快删除算法复杂 2.经典算法总结 查找算法:线性查找和二分查找排序算法:用表展示 第一讲数组 1.Java中数组的基础知识 1)创建数组 在Java中把数组当作对象来对待,因此在创建数组时必须使用new操作符: 一旦创建数组,数组大小便不可改变。 2)访问数组数据项 数组数据项通过方括号中的下标来访问,其中第一个数据项的下标是0: 3)数组的初始化 当创建数组之后,除非将特定的值赋给数组的数据项,
4、否则它们一直是特殊的null对象。 2.面向对象编程方式 1)使用自定义的类封装数组 2)添加类方法实现数据操作 测试MyArray类方法: 3.有序数组 1)有序数组简介以及其优点目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 有序数组是一种数组元素按一定的顺序排列的数组,从而方便使用二分查找来查找数组中
5、特定的元素。有序数组提高了查询的效率,但并没有提高删除和插入元素的效率。 2)构建有序数组 将中自定义的类封装数组MyArray的insert方法改为如下: 4.查找算法 1)线性查找 在查找过程中,将要查找的数一个一个地与数组中的数据项比较,直到找到要找的数。在中自定义的类封装数组MyArray的queryByValue方法,使用的就是线性查找。 2)二分查找 二分查找,即不断将有序数组进行对半分割,每次拿中间位置的数和要查找的数进行比较:如果要查找的数中间数,则表明该数在数组的后半段;如果要
6、查的数=中间数,则返回中间数。 测试该二分查找方法: 一、二叉树遍历思想: 1、非递归前序遍历 List作栈,top为栈针 While循环 当前点非空,输出 右子非空,入栈目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 左子非空,入栈 栈非空,栈顶为当前点,出栈;否则break 2、非递归中序遍历
7、List作栈,top为栈针 While循环 当前点非空,入栈,左子为当前点; 否则,栈顶为当前点,出栈;输出,右子为当前点 3、非递归后序遍历 List1作数据栈,list2作标识栈,top为数据栈针,tag为标识作判断用 Do循环 While循环(当前点非空) 入数据栈,标识栈对应设1;左子为当前点。数据栈顶为当前点,标识栈顶为tag且出栈 Tag为1,数字2进标识栈,右子为当前点 否则为2,数据栈出栈顶,输出,当前点为null; While---与do配套 二叉树的各遍历算法:
8、package; import*; publicclassBinaryTree{ //递归前序遍历目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 publicvoidrPreOrder(Noderoot
此文档下载收益归作者所有