
数据结构与算法
今天也要学习哦
浙江大学硕士研究生
展开
-
并查集(Union-Find)算法介绍
本文转载于:https://blog.youkuaiyun.com/dm_vincent/article/details/7655764,仅作为个人日后复习查阅,侵删。本文主要介绍解决动态连通性一类问题的一种算法,使用到了一种叫做并查集的数据结构,称为Union-Find。更多的信息可以参考Algorithms一书的Section 1.5,实际上本文也就是基于它的一篇读后感吧。原文中更多的是给出一些结论,我尝试给出一些思路上的过程,即为什么要使用这个方法,而不是别的什么方法。我觉得这个可能更加有意义一些,.转载 2020-09-20 16:36:27 · 285 阅读 · 0 评论 -
二叉树高频算法题
二叉树高频算法题以下算法题均为力扣原题,对自己刷过的一些二叉树相关算法题做一个总结,便于日后复习。定义一棵二叉树:public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } }1.双遍历序列构造二叉树1.1.从前序遍历和中序遍历构造二叉树根据一棵树的前序遍历与中序遍历构造二叉树。注意:你可以假设树中没有重复的元原创 2020-08-12 16:10:13 · 1204 阅读 · 0 评论 -
二叉树的四种遍历方式(Java实现)
二叉树遍历方式创建二叉树实体类:public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; }}1.前序遍历前序遍历打印结点顺序:中 左 右递归实现: /** * 递归前序遍历 * @param root */ public void preOrder(TreeNode root)原创 2020-08-11 16:27:32 · 691 阅读 · 0 评论 -
链表相关算法题(Java实现)
链表相关算法题以下题目均为力扣原题,解法参考评论区大佬,仅作为个人日后复习之用。1.链表反转定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL代码实现:class Solution { public ListNode reverseList(ListNode head) {原创 2020-08-10 16:08:10 · 1707 阅读 · 0 评论 -
查找算法(含Java实现)
几种常见的查找算法参考文章https://blog.youkuaiyun.com/weixin_39241397/article/details/79344179?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFr转载 2020-08-09 19:47:20 · 495 阅读 · 1 评论 -
几种常见的排序算法
排序算法归纳参考博客https://www.cnblogs.com/guoyaohua/p/8600214.html,文章仅作为自己日后复习总结,不作其他用途。目录排序算法归纳1.排序算法性能总览2.冒泡排序(稳定)3.选择排序(不稳定)4.插入排序(稳定)5.希尔排序(不稳定)6.快速排序(不稳定)7.归并排序(稳定)8.基数排序(稳定)9.堆排序(不稳定)10.计数排序(稳定)11.桶排序(稳定)12.基数排序 vs 计数排序 vs 桶排序转载 2020-08-09 15:58:33 · 521 阅读 · 0 评论