LeetCode 142. Linked List Cycle II给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。
为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。
说明:不允许修改给定的链表。
示例 1:
输入:head = [3,2,0,-4], pos = 1输出:tail connects to node index 1解释:链表中有一个环,其尾部连接到第二个节点。
示例 2:
输入:head = [1,2], pos = 0输出:tail connec...
单链表的反转遍历实现:
递归实现:
消息队列 Kafka Nodejs 的使用1. 消息队列使用场景:这边就先不介绍消息队列的优劣,主要列了一下它的三种核心的场景。
解耦
异步
削峰
消费方式:
点对点: Work Queue
发布-订阅:Publish/Subscribe
目前我们项目应用到的场景:
目前我们使用RabbitMq, 主要使用点对点的消费模式。
削峰 , 异步:
我们这些场景如果用 Kafka 该如何实现?
2. Kafka简介官网的描述是这几句:
Apache Kafka® is a distributed streaming platform**. What e...
Auto Test By Python目的:针 LintCode-91. Minimum Adjustment Cost.md 对项目做系列流程测试,以达到,每次做回归测试时, 都可以不需要人工按历史步骤测试。
难点:
测试项目与外部系统有网络请求交互,需要等待第三方网络请求异步结果
测试项目需要依赖外部系统提供的网关页面, 需要在其网关页面里面做页面操作
流程图:项目系统图:技术选型:语言:Python
Python 框架: Flask
Django: Python Web应用开发框架 …
Diesel:基于Greenlet的事件I/O框架 …
Flask:一个用Python编写的...
1. Dubbo 是啥?Dubbo 是一个由阿里开源的 RPC 框架。
简单说下RPC框架的背景。
Dubbo 是一种 RPC 框架,应用在分布式服务。
2. 使用 Dubbo 实现 Java 互调 首先我们可以先尝试下同语言下的 Dubbo 调用,从容易开始。
可以参考下 dubbo 官方文档 [http://dubbo.apache.org/zh-cn/docs/user/quick-start.html]
这边简单尝试下,主要有两步
首先建立一个服务提供方, 也就是上图 Provider 的角色
接下来建立一个服务消费者, 也如同上图的 Cons...
Eggjs使用sofa-rpc-node最近读了比较多的 rpc 资料,目前所使用的项目为 node.js 项目,于是希望能在项目中使用 rpc 。
RPC (Remote Procedure Call)RPC 即 远程过程调用,就是像调用本地的函数一样去调用远程的函数。
与 HTTP 的区别?其实 HTTP 也可以实现远程调用的效果,那么 HTTP 与 RPC 到底是什么关系呢?有什么区别呢?
RPC经过了解,我发现RPC 和 HTTP 其实是不在同一个层级的概念。
RPC 通常所讲是一个框架
这是阿里对 RPC 开源RPC框架sofa 的优点截图
RPC 也可以基于 HTTP 实...
动态规划定义: 简单来说动态规划是用来解决算法性能问题。
然而,能用动态规划的算法是很有局限的,动态规划能解决 最优子结构 问题, 其他类似的问题需要自己去归纳。 最优子结构问题 是指那种局部最优能够决定全局最优解的问题。简单来说,就是问题能够分解问子问题解决。
最优子结构问题,优点是写法清晰简单;但通常都会有一个通病,就是会重复解决同样的子问题,重复解决子问题就会带来巨大的开销。
一个简单的例子就是斐波那契数列的递归算法:
12345678public class Fibonacci { public Fibonacc...
红黑树学习笔记定义:红黑树比 AVL 树的性能要高,插入/删除的时间复杂度还是O(log2n)
五个性质:1. 节点都是红,黑;
2. 根节点是黑色的;
3. 叶子节点(没有左/ 右儿子的节点) 的左右儿子都是 Nil 节点,Nil 节点都是黑色的
4. 红色节点的左右儿子都是黑色节点;
5. 从根节点到每个 Nil 节点的黑色节点数都相同。
难点插入操作:情形1:该树为空树,
操作:直接在根节点上插入黑色节点。
由于性质3和性质5,插入节点必须是红色节点,但是根节点例外。
情形2:插入节点 N 的父节点是黑色的,
操作:不违反任何规则,不需要调整,直接插...
找出不合格品最近找出来草稿纸,看到一条高三时做的有趣的脑洞题。
题目是这样的:
有12个大小一样的铁球,其中有一颗是劣质品,除了这个劣质品,其他11个重量都一样,现在只有一个天平⚖。请问无论遇到什么情况,至少需要称几次才能找到这个劣质品。
题目忘了是谁提出来的,当时整个班的同学都开始想怎样解题。
从算法的角度去解题, 相当于给了一条这样的题目:给定一个 n 位长度的数组,里面除了一个数字与其他数不一样,其他数字都一样。
如输入 [2, 2, 2, 1], n >= 3
要求:输出 3
如输入 [2, 2, 4, 2], n >= 3
要求:输出 2
且:时间复杂度尽量小。
1...
Leetcode-46.全排列题目:给定一个没有重复数字的序列,返回其所有可能的全排列。
示例:
12345678910输入: [1,2,3]输出:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]
思路:
for 循环原始 nums 数组,每推入一个 nums[i] 后,递归的推入大于 i 之后的元素,i 之前的 nums 不用处理