……数据结构
wastill
坚持,是一切拥有的基石。
展开
-
最长回文串-leetcode第五题
给出一个字符串,求出他的最长回文串。 已知的解法有三种,动态规划,中心扩散,manacher。这里准备使用前两种算法,另外一种暂时没时间研究。 解法1: 动态规划 对于回文串,单独的一个字符是回文串,两个相邻的字符相等时是回文串。 public String longestPalindrome(String s) { int ans = 0; String str = s.substring(1); // 回文串,对于字符串S,如果串p原创 2020-09-17 00:03:59 · 135 阅读 · 0 评论 -
二叉树及其遍历方式
二叉树的基本性质: <1>.第i层最多有2的i-1次方个节点(i>=1)。 <2>.如果二叉树有k层,则总共最多有2的k-1个节点(k>=1)。 <3>.若二叉树按从上到下从做到右依次编号,某节点编号为k,则其子节点编号分别为2k和2k+1. &a原创 2019-01-21 11:30:33 · 393 阅读 · 0 评论 -
已知前序和中序遍历求整个子树原理及实现
在二叉树中给出二叉树的前序及中序遍历,求出他的整个二叉树。 例: 前序遍历:pre:ABDECFG 中序遍历:in:DEBAFGC 思路: 首先明确一下他们的遍历顺序: 前序遍历:根节点->左子树->右子树 中序遍历:左子树->右子树->根节点、 前序遍历是从根节点开始的所以pre的第一个节点肯定是当前树的根节点 而根据中序遍历的in数组可以得到根节点的左右子树。 分别用i...原创 2019-01-21 14:26:06 · 420 阅读 · 1 评论 -
HashMap深解
Map是键值对(key-value)映射接口。而HashMap是Map的基于哈希表的实现。在HashMap中,会根据hash算法来计算key-value存储位置,来实现快速存取。在HashMap中键是唯一的,而值可以是相同的,一个键值对(key-value)组成了一个entry。 HasMap常用的两个操作,put(Key,Value)和get(Key)。 因为HashMap中...原创 2019-07-08 11:45:42 · 137 阅读 · 0 评论