数据结构和算法
Zero. J
这个作者很懒,什么都没留下…
展开
-
最通俗易懂的排序算法(二)
简单选择排序 堆排序 归并排序 基数排序一、选择排序 选择排序的基本思想是每一趟从待排序的元素中选出关键字最小的元素,顺序放在已排好序的子表的最后,直到全部元素排序完毕。这种排序方法每一趟总是从无序区中选出全局最小(或最大)的关键字,所以适合从大量的元素中选择一部分排序元素。1.简单选择排序 从待排序序列中选出最小的元素,将它与无序区中第一个元素交换,往复循环(每趟选...原创 2020-04-18 13:29:48 · 238 阅读 · 0 评论 -
最通俗易懂的排序算法(一)
这里的几种排序,其排序过程都是在内存中进行,而不涉及数据的内、外存交换,这样的排序称之为内排序。 冒泡排序 快速排序 直接插入排序 希尔排序一、交换排序1.冒泡排序 相邻两个元素进行大小比较和交换,将较小的元素交换到较大元素的前面,第一趟之后最小的元素就到达最前面,第二趟将第二小的元素交换到第二个位置,经过若干趟所有元素排列成从小到大的顺序,这样的排序就是冒泡排序。排...原创 2020-04-14 22:04:35 · 327 阅读 · 0 评论 -
面向对象的可重用链表
在高级程序设计语言中,面向对象是一种非常重要的特性,在前面的链表程序中,保存数据的内容非常局限,这样的程序在实际开发中基本是不会用到的,而要想开发一个可以真正使用的链表,就需要让其具备以下功能:向链表中添加数据:public void add(数据类型 变量)取得链表元素的个数:public int size()判断链表是否为空:public boolean isEmpty()判断一...原创 2020-04-10 21:51:27 · 152 阅读 · 0 评论 -
神奇的递归(斐波那契数列与汉诺塔Hanoi)
递归的定义;递归的应用:斐波那契数列、汉诺塔问题(Hanoi)原创 2020-04-09 22:33:41 · 453 阅读 · 0 评论 -
线性表中的另类—链表
顺序表必须占用一整块事先分配大小的存储空间,这样会使存储空间的利用率降低,为此链表的概念应运而生,它是线性表的链式存储结构,可以实现存储空间的动态管理。链表又分为单链表、双链表、循环链表。原创 2020-04-09 10:57:36 · 83 阅读 · 0 评论 -
操作受限的线性表(栈与队列)
线性结构中栈和队列的相关问题原创 2020-04-06 12:24:02 · 2762 阅读 · 1 评论 -
不可变数组的探究
数组的基本使用问题一:解决数组长度不可变,向数组中添加元素问题二:删除数组中元素面相对象的数组原创 2020-04-04 20:25:03 · 318 阅读 · 0 评论