数据结构、算法
KasierYang
这个作者很懒,什么都没留下…
展开
-
数据结构之(1)数组
背景表现优秀程序,是选择合适的数据结构和优秀的算法的必然结果,作为一名务实、精进的程序员,对数据结构的学习,熟练,自然成了必要的课程。闲话不多说,程序中的数据结构,是与语言无关的,常见的数据结构有: 数组(静态数组、动态数组)、 线性表、链表(单向链表、双向链表、循环链表) 队列 堆 树(二叉树、查找树、平衡树、线索树、线索树) 在接下来的学习中,会对以上各种数据结构进行操作(add/get/d原创 2015-11-10 15:16:08 · 650 阅读 · 0 评论 -
数据结构之(2)链表
前言作为对简单的数据结构,数组,在各方面都,缺点都是很明显的,1,无序数组,查找和删除,都是计较慢的,2.有序数组,插入效率很低3.数组一旦定义,起长度是不可改变的,在内存中的连续区域,如果要增加长度,需要对数组复制,也会造成空间的浪费。在实际开放中,如果是需要通过下标来查询元素,数组还是很好的选择,除此之外,链表也是数据结构中,使用最广泛的。Java中对象的存储先来看一段代码: // 节点原创 2015-11-16 14:29:31 · 606 阅读 · 0 评论 -
数据结构之(3)栈和队列
定义1. 栈的定义是一种运算受限的线性表,其限制是仅允许在表的一端进行插入和删除运算。人们把此端称为栈顶,栈顶的第一个元素被称为栈顶元素,相对地,把另一端称为栈底。向一个栈插入新元素又称为进栈或入栈,它是把该元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称为出栈或退栈,它是把栈顶元素删除掉,使其下面的相邻元素成为新的栈顶元素。 在日常生活中,有许多类似栈的例子,如刷洗盘子原创 2015-11-18 17:21:23 · 545 阅读 · 0 评论