为一个特定的任务选择最好的数据结构和算法是开发高性能软件的一个关键。 1. Collection Collection接口为线性表,向量,栈,队列,优先队列以及集合定义了共同的操作。 Java collection框架中定义的所有接口和类都分组在java.util包中。 Java collectio ...
分类:
其他好文 时间:
2021-05-24 10:26:43
阅读次数:
0
最近在LeekCode用java写一些算法时,经常遇到要使用栈和队列结构,使用栈的话,Stack已经不被推荐使用了,所以栈和队列我们通常都是用LinkedList这种双链表结构实现。Linkedlist是一个双向链表,操作起来非常方便,java也封装了很多的方法在这个双向链表里面。 题目:使用栈,L ...
分类:
其他好文 时间:
2021-05-24 10:25:56
阅读次数:
0
无论是向量、列表、还是栈和队列,其保存的元素之间都存在一个线性次序,故它们都属于线性结构,树则不然,其元素之间并不存在直接后继或直接前驱的关系。不过可以对树附加某种约束,从而确定某种线性次序,因此树属于半线性结构。树有着不计其数的变种,在算法理论以及实际应用中,它们都扮演着最为关键的角色。之所以如此 ...
分类:
其他好文 时间:
2021-05-24 09:33:21
阅读次数:
0
1.出度为0则为满足条件的节点,取所有出度为0的到queue中,之后循环减去这些队列中的出度,正反索引减少访问时间 class Solution { public: vector<int> eventualSafeNodes(vector<vector<int>>& graph) { vector< ...
分类:
其他好文 时间:
2021-05-24 09:15:19
阅读次数:
0
简介: 好代码,给人第一个印象的感觉,就像一篇好文章一样,读起来朗朗上口。不同的文章有不同的风格体裁,不同的代码也有不同的编程风格要求。Python有严格的缩进,像诗歌一样工整对仗;C语言面向过程像散文一样形散神聚,意境深邃;Java语言面向对象又像是写小说一样,能勾勒出一个一个人物形象。但是无论哪 ...
分类:
其他好文 时间:
2021-05-24 07:37:45
阅读次数:
0
队列 1.先进先出 2.可以使用数组或者链表来模拟队列 数组形式 单向队列 首先需要俩个指针,front和rear。front表示头指针,rear表示尾指针。 front = -1,rear = -1 front==rear:该队列为空 rear==Maxsize-1:该队列满了 但是单纯的这样设计 ...
分类:
编程语言 时间:
2021-05-24 07:31:45
阅读次数:
0
一、项目 1、明确你的项目到底是做什么的,有哪些功能 2、明确你的项目的整体架构,在面试的时候能够清楚地画给面试官看并且清楚地指出从哪里调用到哪里、使用什么方式调用 3、明确你的模块在整个项目中所处的位置及作用 4、明确你的模块用到了哪些技术,更好一些的可以再了解一下整个项目用到了哪些技术 在你无法 ...
分类:
编程语言 时间:
2021-05-24 05:49:28
阅读次数:
0
async await 这两个关键字是高版本语法:异步的编程体变得和同步几乎一致 await 是一个函数之中的关键字,要求函数必须是 async 声明的函数。 使用 await关键字,await后面必须是 promise 对象 await 关键字会将await后面所有的代码放进异步队列之中 awai ...
分类:
其他好文 时间:
2021-05-24 05:21:13
阅读次数:
0
读写分离负载均衡/集群消息队列Redis分布式缓存:本地缓存 分布式缓存分库分表 解决高并发的方法1.水平扩展:多来几台服务器2.垂直扩展 :立杆见影,但是有上限3.分布式:就是一台服务器 的事儿分成多台服务器协作完成集群:一台服务器做的事请,现在由多台服务器共同承载,每台服务器都是独立完成的集群— ...
分类:
其他好文 时间:
2021-05-24 05:16:23
阅读次数:
0
基于C++11实现线程池的工作原理. 目录 基于C++11实现线程池的工作原理. 简介 线程池的组成 1、线程池管理器 2、工作线程 3、任务接口, 4、任务队列 线程池工作的四种情况. 1、主程序当前没有任务要执行,线程池中的任务队列为空闲状态. 2、主程序添加小于等于线程池中线程数量的任务. 3 ...
分类:
编程语言 时间:
2021-05-24 02:50:48
阅读次数:
0