忙碌了一整个星期公司布置的任务,如今周末终于能抽出时间继续自己在互联网技术上的学习,尽管现阶段是学校安排的考试周,但也无法阻止我对新技术的学习热情。因为计划是寒假就开始leetcode的学习之旅,所以今天先总结一篇学习到…
分类:算法
Leetcode - Convert a given Binary Tree to Doubly Linked List
这不是一个Leetcode 题目.我自己写了下。 题意如下: Convert a binary search tree to a sorted, circular, doubly-linked list, in plac…
还在为你的简历苦恼吗?程序员必读!
专栏 | 九章算法 网址 | http://www.jiuzhang.com advanced_computer_science.jpg 不论你是刚进入电脑编程这个行业的菜鸟还是资历丰富的专业程序员,你都要知道在这个行业…
JavaScript 算法与数据结构
本仓库包含了多种基于 JavaScript 的算法与数据结构。 每种算法和数据结构都有自己的 README 并提供相关说明以及进一步阅读和 YouTube 视频。 数据结构 数据结构是在计算机中组织和存储数据的一种特殊方…
漫画:什么是MD5算法?
摘要哈希生成的正确姿势是什么样呢?分三步: 1.收集相关业务参数,在这里是金额和目标账户。当然,实际应用中的参数肯定比这多得多,这里只是做了简化。 2.按照规则,把参数名和参数值拼接成一个字符串,同时把给定的密钥也拼接起…
动态规划求解最长公共子序列
前言 推出一个新系列,《看图轻松理解数据结构和算法》,主要使用图片来描述常见的数据结构和算法,轻松阅读并理解掌握。本系列包括各种堆、各种队列、各种列表、各种树、各种图、各种排序等等几十篇的样子。 最长公共子序列 最长公共…
js实现数据结构及算法之散列表(Hashtable)
散列表(Hashtable) 散列表也被称为哈希表,Hash表是一种特殊的数据结构。 散列后的数据 可以快速插入和取用 在散列表上插入、删除和取用数据非常快,但是查找数据却效率低下 js散列表基于数组设计,理想情况散列函…
Leetcode - Copy List with Random Pointer
My code: /** * Definition for singly-linked list with a random pointer. * class RandomListNode { * int label; …
Java - 泛型的理解
做CS61B的homework6,碰到了一个问题,本来想忽视,问了之后才发现是大问题。 前提: 我现在要构造一个size = 100 的哈希表,里面装LinkedList, 然后每个链表用来装发生冲突的,Key相等的类 …
【刷算法】二叉树中序遍历的下一个结点
问题形貌 给定一个二叉树和个中的一个结点,请找出中序遍历递次的下一个结点而且返回。注重,树中的结点不仅包括摆布子结点,同时包括指向父结点的指针。 剖析 关于二叉树中序遍历来讲,某node的下一个节点能够分为以下几种状况:…
图论动态规划算法——Floyd最短路径
前言 推出一个新系列,《看图轻松理解数据结构和算法》,主要使用图片来描述常见的数据结构和算法,轻松阅读并理解掌握。本系列包括各种堆、各种队列、各种列表、各种树、各种图、各种排序等等几十篇的样子。 Floyd算法 Floy…
HashMap实现原理及源码分析
一、背景 在java中,HashMap是很常用的一种数据结构,最近重新温习了一下,这里以源码层面来分析总结一下HashMap,如有不合理或疑问的地方,欢迎沟通交流。 HashMap是Java中的一个容器,继承自Abstr…