Python dict 笔记
介绍字典(dict)是Python内置提供的一种常用数据结构,他用于存放具有映射(mapping)关系的数据。 可变对象。 dict 常用操作创建两种方式,使用dict()函数创建字典;使用花括号语法创建字典。 dict1 = {}dict2 = dict() # 创建了一个空 ...
阅读更多
LRU: 缓存淘汰算法
前言在使用缓存时,由于缓存容量有限,当缓存容量到达上限,就需要删除部分数据挪出空间。但是缓存数据不能随机删除,一般情况下需要根据某种算法删除缓存数据。 常用的淘汰算法有LRU, LFU, FIFO,本篇介绍LRU算法并重点讲述LRU的实现。完整代码也是LeetCode 146. LRU缓存的答案。 ...
阅读更多
Tmux 简介
什么是Tmux打开一个终端窗口(terminal window,以下简称”窗口”),在里面输入命令。 用户与计算机的这种临时的交互,称为一次”会话”(session) 。 会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束。 一个典型的例子,打开一个远程窗 ...
阅读更多
火车站台数量问题
题干假设已知某个火车站的所有过往列车的到达arrival和离开departure时间(同一天),如果要求所有列车都不等待直接进站,问至少需要多少个站台。无需考虑晚点等特殊情况。 例如, Input: 到达时间: arr[] = {9:00, 9:40, 9:50, 11:00, 15:00, ...
阅读更多
Java-初识注解
初识注解简介 Annotation提供了一种为恒旭元素设置元数据的方法。 类似于修饰符,可用于修饰包、类、构造器、方法、成员变量、参数、局部变量的声明。 Annotation是一个接口,程序可以通过反射来获取指定程序元素的Annotation对象。 Annotation不影响程序代码的运行。 如果希 ...
阅读更多
编写脚本读取文件并执行命令
最近遇到如下需求: 有一个文件,文件格式大概是这样 <filename1>\t<download_url1><filename2>\t<download_url2> 编写一个脚本循环读取该文件的每一行,使用axel命令将download_url下载下 ...
阅读更多
田忌赛马与贪心法则
本文涉及LeetCode 870. 优势洗牌 给定两个大小相等的数组 A 和 B,A 相对于 B 的优势可以用满足 A[i] > B[i] 的索引 i 的数目来描述。返回 A 的任意排列,使其相对于 B 的优势最大化。 示例 1: 输入:A = [2,7,11,15], B = [1,10, ...
阅读更多
PriorityQueue 概述
快速入门Queue是一个严格的先进先出(FIFO)的队列。 但有时候这并不能满足我们的需求。当我们需要对队列中的元素重排,按照重排后的元素顺序出队时,这时候就需要PriorityQueue。 PriorityQueue和Queue的区别在于,它的出队顺序与元素的优先级有关,对PriorityQueu ...
阅读更多
单例设计模式
介绍单例模式确保一个类只有一个实例,并提供了一个全局访问点。 应用线程池,数据库连接对象。 经典单例模式一个经典的单例模式实现: // NOTE: This is not thread safe!public class Singleton { private static Singlet ...
阅读更多