摘要: Trie中文名又叫做字典树,前缀树等,因为其结构独有的特点,经常被用来统计,排序,和保存大量的字符串,经常见于搜索提示,输入法文字关联等,当输入一个值,可以自动搜索出可能的选择。当没有完全匹配的结果时,可以返回前缀最为相似的可能。 例如:上面的树由abcd abc abd,b等构成,红点表示可以为某 阅读全文
posted @ 2022-09-23 20:53 junlancer 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 引言:并查集是一种树型的数据结构,用于处理一些不相交集合(disjoint sets)的合并及查询问题,例如kruskal算法. 根据其原理我们简单实现一个. 并查集主要有两个操作:合并,查找 我们可以回忆下链表,假设某些元素都在同一个链表,我们则认为这些元素是同一个集合 如a:{1,2,3},集合 阅读全文
posted @ 2022-06-06 21:58 junlancer 阅读(30) 评论(0) 推荐(0) 编辑
摘要: 题目LeetCode 736 hard 给你一个类似 Lisp 语句的字符串表达式 expression,求出其计算结果。 表达式语法如下所示: 表达式可以为整数,let 表达式,add 表达式,mult 表达式,或赋值的变量。表达式的结果总是一个整数。(整数可以是正整数、负整数、0)let 表达式 阅读全文
posted @ 2022-02-02 22:34 junlancer 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 审题: 在一棵无限的二叉树上,每个节点都有两个子节点,树中的节点 逐行 依次按 “之” 字形进行标记。 如下图所示,在奇数行(即,第一行、第三行、第五行……)中,按从左到右的顺序进行标记; 而偶数行(即,第二行、第四行、第六行……)中,按从右到左的顺序进行标记。 来源:力扣(LeetCode)读完题 阅读全文
posted @ 2021-08-01 01:47 junlancer 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 好久没更新了,因为刚换了工作,比较忙。这次更新就由这道表面hard,实则medium的题目开始吧,同时希望自己的生活工作哪怕遇到hard,但也能积极面对,最后发现其实也就那回事! 审题: 给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历 序列。 对位于 (row, col) 的每个 阅读全文
posted @ 2021-08-01 01:09 junlancer 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 听名字是不是有点儿脱裤子放屁的感觉,其实就是写一个允许你无需使用类或者方法包装来执行 Java 语句(类似Java 9中的Jshell),就像是一些脚本语言(js,python)的一些解释执行过程一样 目标 我们可以定义一个自己的文本文件,后缀名为j,比如Foo.j,在这个文件中,我们可以像pyth 阅读全文
posted @ 2021-03-11 10:29 junlancer 阅读(1215) 评论(0) 推荐(0) 编辑
摘要: 平时习惯了在leetcode上的网页刷题,唯一缺点常用的几个主题不太好用,主要是不能自定义背景色,便写了一个插件来用,插件代码已经上传到了github地址:https://github.com/junlancer/setBackgroundColor 怎么下载使用: 下载这三个文件,然后本地新建一个 阅读全文
posted @ 2020-11-02 10:51 junlancer 阅读(929) 评论(0) 推荐(0) 编辑
摘要: 最近刷题遇到这个问题,甚是喜欢,便想着将自己整个思考的过程拿出来分享一下! 题目: 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。 获取数据 get(key) - 如果关键字 (key) 存在于缓存中,则获 阅读全文
posted @ 2020-10-27 10:07 junlancer 阅读(191) 评论(0) 推荐(0) 编辑
摘要: class Solution { public int maxSubArray(int[] nums) { if(nums == null || nums.length == 0) return 0; return maxSubArray(nums,0,nums.length-1); } priva 阅读全文
posted @ 2020-07-23 16:17 junlancer 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 在一个数组中,每一个数左边比当前数小的数累加起来,叫做这个数组得小和. 比如[1,3,4,2]1左边比1小的数没有,3左边比3小的数有1,4左边比4小的数有1,3,2左边比2小的数有1.那么这个数组的小和是 1+1+3+1=6 暴力方法是每次遍历的时候,都要再把前面的比较一下,这样时间复杂度是O(n 阅读全文
posted @ 2020-06-12 17:22 junlancer 阅读(412) 评论(0) 推荐(0) 编辑