随笔分类 - 数据结构与算法(JAVA)
数据结构与算法的学习
摘要:二叉树 class Solution { public static void main(String[] args) { } public TreeNode buildTree(int[] preorder, int[] inorder) { if (preorder == null || pre
阅读全文
摘要:插入、删除和随机查询时间复杂度都为O(1) 解题思路:map+list
阅读全文
摘要:求众数 解题思路:Boyer-Moore、KMP 求众数2: 题目:给定一个大小为 n 的数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素 解题思路:投票算法 投票算法图解:
阅读全文
摘要:leetcode 167 两数之和2,输入有序数组 解题思路:双指针碰撞
阅读全文
摘要:一、红黑树原理 1、红黑树的insert(新的插入的节点默认为红色) (1)如果插入是根节点,直接把节点涂为黑色,把节点设置为根节点 (2)如果插入的节点的父节点是黑色,无需任何处理 (3)需要修复的情况 情况1:当前节点的父节点为红色,叔叔节点为红色,解决办法:(将当前节点的父节点和叔叔节点涂黑,
阅读全文
摘要:参考文献: 线段树:https://www.cnblogs.com/TheRoadToTheGold/p/6254255.html
阅读全文
摘要:1、若有1T的数据,需要实现由大到小的排列,你用什么办法,说说你的思路和想法? 解题思路:1、内存大小,比如256M 2、每一条数据的大小1K 这样的话1T有的数据条数大约为230 内存中可以存放的数据条数为218 把这些数据分成份数必须大于212=4096 根据某一种hash算法把数据写到n个文件
阅读全文
摘要:一、内部排序 1、冒泡排序(交换排序) public void maopaosort(int[] nums) { int len = nums.length; if(len<=1) { return; } boolean flag = true; for(int i=0;i<len-1;i++) {
阅读全文
摘要:给定一个数组,然后找出数组中和为target的两个数 解题思想:主要用哈希表
阅读全文
摘要:主要的解题思想,以下的题目虽然和本题有点不同,但主要的解题思想是一模一样的。 该题的代码:
阅读全文
摘要:完美矩形问题的求解思路:(要达到完美矩形时,必须满足的条件) 1、所有的矩形的面积之和等于完美矩形的面积 2、完美矩形的边角四个点的个数都必须是一 3、除了边角四个点外,其他点的个数都必须为偶数
阅读全文

浙公网安备 33010602011771号