![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
文章平均质量分 72
数据结构与算法 不可分割,只谈数据结构枯燥无味,只谈算法相当于耍无赖
恭晓
是故无贵无贱,无长无少,道之所存,师之所存也。三人行,则必有我师。是故弟子不必不如师,师不必贤于弟子,闻道有先后,术业有专攻,如是而已。
展开
-
大话 选择排序和冒泡排序的区别
第一次比较 第一个元素的值是6和 第二个元素的值是4 比较4小,交换位置, 把4放在第一个下标位置。降序的话就是把小元素放在元素末尾。第一次比较 第二个元素的值6和第3个元素的值4 比较 4小,交换位置把4放到二个下标位置。第三次比较 第二个元素的值4和第5个元素的值3 比较 3小,交换位置把3放到二个下标位置。第二次比较 第一个元素的值4和第3个元素的值3 比较 3小,交换位置把3放到一个下标位置。第四次比较 第一个元素的值3和第5个元素的值2 比较 2小,交换位置把2放到一个下标位置。原创 2023-03-24 17:47:03 · 266 阅读 · 0 评论 -
树 - 二叉树基础
树作为一种数据结构,不同链表和数组,是一种全新的数据结构。具体化表示就像是家谱一样,有根有子孙。当然也可以用嵌套集合或者凹形表示等其他方式表示。基本术语结点的度:结点拥有的字数的数量。如A结点的度为3,B结点的度为2,G结点的度为0。叶子结点:结点为0的度称为叶子结点。如G结点分支结点:结点度数不为0。如:B、F结点。根结点:没有上级结点。如:A结点。父节点:是相对的概念:B结点是E和F的父节点。子节点:是相对的概念:E和F是B结点的子节点。路径长度:从A到I的路径是ABFI,路径长度原创 2022-03-17 20:06:20 · 1031 阅读 · 0 评论 -
分而治之 D&C 快速排序 Java实现 非传统方法
首先要了解递归函数中重要的两个概念:1、不符合递归的条件。基线条件(base case)编写递归函数时,必须告诉它何时停止递归。基线条件则指的是函数不再调用自己,从而避免形成无限循环。2、符合递归的条件。递归条件(recursive case)。递归条件指的是函数调用自己。D&C解决问题的过程包括两个步骤。(1) 找出基线条件,这种条件必须尽可能简单。(2) 不断将问题分解(或者说缩小规模),直到符合基线条件。D&C的工作原理:(1) 找出简单的基线条件;(2) 确定如何缩小原创 2021-03-25 17:48:54 · 172 阅读 · 0 评论 -
3.1栈 定义
栈是限定在表的一端进行插入和删除的线性表,通常将插入和删除的一端称为栈顶,另一端称为栈底。不含元素的空表称为空栈。栈的运算有以下几种(1)置空栈。构造一个空栈(2)判栈空。若栈为空栈,返回真,否则返回假(3)判栈满。若栈为满栈,返回真,否则返回假(4)进栈。将元素插入栈的栈顶。(5)退栈。若栈为非空,则将栈的栈顶元素删掉(6)取栈顶元素。返回栈顶元素,不改变栈的状态...原创 2020-08-24 18:57:50 · 806 阅读 · 0 评论 -
数据结构种类
数据结构的定义数据结构 :即数据之间的关系。数据之前存在逻辑关系,和客观存在的物理关系。逻辑关系称为逻辑结构。物理关系称之为存储结构。逻辑结构的种类在一般数据结构学习中,我们学习的都是逻辑结构。从数据元素之间的关系来看,一般分为四种关系。集合,线性结构,树状结构,图结构。数据结构一般可以采用两种方式来呈现。二元组和图形。图形相对来说好理解,一看明了。如图:set 表示元素之间没有任何...原创 2019-03-30 15:00:10 · 336 阅读 · 0 评论 -
Java数据类型理解
Java属于计算机高级语言,与其它高级语言如C,python,C#,PHP这些同属与高级一类语言。有高级语言就会有‘比低级语言’,但是在计算机词汇中我们称之为机器语言。这里我们主要介绍Java。在学习Java之前我们先要明白计算机时用来计算的工具,就如同写作,画画,小学计算课。想要做这些事情首要的是要有承载你思想的东西,用纸,用墙的都有,大部分选择纸张。计算机就如同纸张一样。计算机就是用来计算...原创 2019-03-29 11:48:03 · 208 阅读 · 0 评论