- 博客(9)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 浅谈七种排序算法
排序算法 *以此谨记自己学习Java心得 这几天在学习JavaWeb阶段,落了一点排序的算法,今天重新回顾。 以下排序算法,都是从小到大排。这七种排序算法分别是冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序以及桶排序。 时间复杂度 每个算法都有时间复杂度,用bigO来表示。先引入一个比较简单的程序来计算一下时间复杂度 这个是C++的一个程序,算时间复杂度都一样,根据每一步程序执行了多...
2020-03-17 22:34:28
329
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 程序员一些基础算法
基础算法 *以此谨记自己学习心得 今天是3月8号,是一个特殊的日子,也是我学完数据结构与算法的日子。 在这个特殊的日子里学完我最喜欢的数据结构与算法,也是对得起自己。 算法这个东西,要是想不到思路,会很难。像做数学题一样,想通了,就简单了。每次老师讲完,我都觉得:哇,好难啊,我都不想写代码自己做一遍。但是老师讲完一个算法,我都会自己去程序从头到尾想一遍,写一遍,每次开始想的时候总是困难的,但是也是...
2020-03-08 23:48:42
247
原创 动态规划——2020网易互娱笔试题
动态规划 以此谨记自己学习java心得 今天又做了一题动态规划,发现笔试经常考这个 题目如下: 小A很喜欢字母N,他认为连续的N串是他的幸运串。有一天小A看到了一个全部由大写字母组成的字符串,他被允许改变最多2个大写字母(也允许不改变或者只改变1个大写字母),使得字符串中所包含的最长的连续的N串的长度最长。你能帮助他吗? * * 输入描述: 输入的第一行是一个正整数T(0 < T <...
2020-04-11 14:58:51
652
原创 动态规划算法——2020美团校招合并金币算法
动态规划 以此谨记自己学习java心得 这几天为了笔试一直在牛客网刷题,分享一题动态规划的题目,想了好几天,今天开了几篇文章就开窍了。 首先我们来说说什么是动态规划算法。这里引用一下我参考的文章,讲的挺详细的 这是我参考的CSDN文章 看完上面这篇,我来简单介绍一下步骤吧。 1.一般算法题都是用二维数组来求解的,我这里比方说dp[][] 那这个数组dp[i][j]到底是什么含义,是弄清动态规划算法...
2020-04-10 20:21:42
1197
1
原创 KMP算法
字符串匹配中的KMP算法 *以此谨记自己学习Java心得 刚刚琢磨完KMP算法,老师的视频和代码看了一次又一次,虽然不能从真正底层原理上理解,但是对于应用这个算法是熟悉了。KMP算法用与匹配两个字符串是否有一样的值,在这里将S1父字符串设置为"BBC ABCDAB ABCDABDDBADC",S2子字符串设置为"ABCDABD"。用KMP算法首先得要让S2字符串创建一个匹配表,也就是看S2的前缀与...
2020-03-05 23:11:31
82
原创 二叉排序树与平衡二叉树
二叉排序树 *以此谨记自己java学习心得 昨天总结了霍夫曼树,今天来总结一下二叉排序树,首先二叉排序树概念,二叉排序树任意一个非叶子结点,它的左结点值比它(当前的非叶子结点)小,它的右结点比它(当前的非叶子结点)大。 如图: 这个二叉排序树的优点就是当我们在查找某一个值时,先和中间的根结点进行比较,若小于根节点则再向根节点的左结点遍历寻找,反之则向根结点的右结点遍历寻找,类似于之前的二分查找,...
2020-03-03 22:10:03
551
原创 霍夫曼编码
霍夫曼编码 以此谨记自己学习java心得 昨天学了霍夫曼编码,霍夫曼编码是在霍夫曼树的基础上对叶子结点进行二进制编码。昨天的心得也已经介绍了霍夫曼树,针对于霍夫曼编码的具体应用,比如说一串字符串如,“i like like like java do you like a java”(这串代码有很多是重复的字母),压缩率很高。如果要将上面的字符串进行霍夫曼编码压缩,首先需要统计出每个字母出现的次数,...
2020-03-02 23:08:57
406
原创 霍夫曼树与霍夫曼编码
霍夫曼树 以此谨记自己学习java心得 这几天一直再学数据结构与算法,学到了树结构,前天也简单讲了线索化二叉树的前序遍历。今天所学的是霍夫曼树,相比较而言霍夫曼树比以前的数组、链表这种难一点。尤其是霍夫曼编码,让我看着老师讲解,还写了一个下午的代码。 首先,先简单介绍一下霍夫曼树,霍夫曼树的每一个叶子结点所代表的数字,我暂且称之为权值。另外一个概念,我称之为层数,如果以根节点为第一层,则每一行为一...
2020-03-01 22:27:18
215
原创 线索化二叉树的概念以及前序线索化
** 二叉树和线索化二叉树 **以此谨记自己学习java心得 什么是二叉树,用我自己的话说。一般简单数据结构是数组和链表,昨天学了哈希表,是一个数组加上一个单向链表完成的。但是哈希表在查找某单元时,需要从头找到尾。而二叉树可以根据大小来分配,像链表里的结构一般是有previous 和next。而二叉树则是left和right。又因为考虑到完全二叉树的最后一排以及倒数第二排的一些元素,它们的指针是空...
2020-02-28 21:03:20
1125
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人