
数据结构与算法
tuonas
努力成为架构师!
展开
-
Java求10000的阶乘!
1、pom文件统一版本原创 2021-07-18 23:19:17 · 1462 阅读 · 1 评论 -
有字符数组a[n],将数组元素顺序颠倒、找出出现频率最高的数组成员
/** * 将字符数组逆序 */ public static void reverseChar(char[] a, int left , int right){ if (left >= right) return; char temp; temp = a[left]; a[left] = a[right]; a[right] = temp; re...原创 2021-07-15 23:38:04 · 330 阅读 · 0 评论 -
关于Java中的&、|、&&、||符号的理解
&、|是操作数运算符,在if条件中不会造成短路;&运算布尔值时,只要有一个为false结果就为false,|运算布尔值时,只要有一个为true结果就为true。&&、||是逻辑运算符,在if条件中会造成短路。 @Test public void testOperator(){ System.out.println(false & true); System.out.println(true & true原创 2020-12-07 21:27:13 · 1093 阅读 · 0 评论 -
ArrayList<Integer>中数字范围为[0, 1024],请筛选出出现次数为奇数的数字,并从大到小排序
public class CountArrayListNumberAriseIsOdd { public static void main(String[] args) { ArrayList<Integer> arr = new ArrayList<Integer>(); Map<Integer, Integer> numAndCount = new HashMap<Integer, Integer>(); .原创 2020-11-30 16:52:08 · 341 阅读 · 1 评论 -
一颗二叉树的先序遍历序列为abcdefg,它的中序遍历可能是
A. cabdefgB. abcdefgC. dacefbgD. abdcfeg答案选B。当原来的二叉树左子树全为空的时候,即如下图所示:无论先访问根还是先访问左子树,答案都是先访问根。原创 2020-10-21 19:58:51 · 22193 阅读 · 0 评论 -
记一下前序、中序、后序遍历
都是以根的位置为基准。前序遍历(根 ->左子树 ->右子树)中序遍历(左子树 ->根->右子树)后序遍历(左子树 ->右子树->根)原创 2020-10-20 20:21:51 · 94 阅读 · 0 评论 -
关于深度优先遍历(DFS)和广度优先遍历(BFS)更深一点的理解
深度优先遍历(DFS):答案不唯一。步骤:1、从图的某一顶点v出发(起点任选),访问此顶点;2、选择一个与顶点v相邻且未被访问过的顶点w,再从w出发进行深度优先遍历(递归),直至图中所有和v连通的顶点都被访问到为止;3、若此时图中尚有顶点未被访问,则另选图中一个未被访问的顶点作起点,重复上述过程,直至图中所有顶点都被访问为止。如下所示:...原创 2020-10-20 19:55:53 · 2189 阅读 · 0 评论