数据结构
文章平均质量分 78
张海玲
men proposes,god disposes.
展开
-
常见排序算法及java实现
排序算法时间复杂度和空间复杂度1. 冒泡排序基本思想:两个数比较大小,较大的数下沉,较小的数冒起来。过程:比较相邻的两个数据,如果第一个数比第二个数小,就交换位置。一直比较到最后两个数据。最终最小数被交换到n的位置,这样第一个最小数的位置就排好了。继续重复上述过程,依次将第2.3…n-1个最小数排好位置。java实现:public static void BubbleSort(int[] arr){ for(int i = 0;i<arr.length-1;i++){原创 2020-09-30 22:42:04 · 241 阅读 · 0 评论 -
【java】利用迭代器Iterator删除集合List中的元素
1 使用for循环删除list中的某个元素1.1 重复元素不相邻代码: public void testList(){ ArrayList<Integer> list = new ArrayList<Integer>(); for (int i = 0; i < 5; i++) { list.add(i); } for (int i = 0; i < 5; i++) {原创 2020-08-30 20:52:11 · 11163 阅读 · 0 评论 -
玩转汉诺塔(hanoi)游戏
汉诺塔由来法国数学家爱德华·卢卡斯曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。4399益智小游戏——汉诺塔游戏描原创 2020-06-30 16:39:47 · 3455 阅读 · 0 评论 -
【java】队列(Queue)的基本使用
文章目录1.队列的基本介绍2.队列的基本用法3.实例1.队列的基本介绍队列是数据结构中比较重要的一种类型(是一种数据结构),它支持 FIFO,尾部添加、头部删除(先进队列的元素先出队列),跟我们生活中的排队类似。队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。注:队列是先进先出,栈是先进后出。(栈的使用)2.队列的基本用法import java.util.Queu原创 2020-05-13 22:47:46 · 3881 阅读 · 0 评论 -
二叉树的介绍及python实现其遍历
文章目录1.二叉树的概念2.二叉树的遍历3.python实现二叉树的遍历(1)递归的形式(2)非递归的形式1.二叉树的概念在计算机科学中,二叉树是每个结点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。一棵深度为k,且有2^k-1个结点的二叉树,称为满二叉树。这种树的特点是每一层上的...原创 2020-04-29 18:25:38 · 390 阅读 · 0 评论