文件索引
Table of Contents
1. 单机系统
1.1. 基础
- Computer System Reading 单机系统方面的一些文章
- Reading List in Computer Systems Area - nFiles
- Operating Systems: Three Easy Pieces
- The C10M Problem
- Is Parallel Programming Hard, And, If So, What Can You Do About It?
- The Secret To 10 Million Concurrent Connections -The Kernel Is The Problem, Not The Solution
- A Tour Inside CloudFlare's Latest Generation Servers
- Busting 4 Modern Hardware Myths - Are Memory, HDDs, And SSDs Really Random Access?
- How long does it take to make a context switch?
- How to receive a million packets per second
- Yahoo! and FreeBSD
- Linux内核设计与实现(Linux Kernel Development) by Robert Love
- Earlybird: Real-Time Search at Twitter twitter实时检索系统
- 现代体系结构上的UNIX系统 (内核程序员的SMP和Caching技术)
- 第六版莱昂斯 Unix 操作系统评述(A COMMENTARY ON THE SIXTH EDITION UNIX OPERATING SYSTEM)
- TCP Implementation in Linux: A Brief Tutorial
- SIMD Single Instruction Muitple Data 单指令多数据
- APUE Unix环境高级编程(Advanced Programming Unix Environment), W. Richard Stevens的神作
- 结构化计算机组成(Strcutured Computer Organization) by A.S.T
- 现代操作系统(Modern Operating Systems) by A.S.T
- 计算机系统概论(Introduction to Computing Systems) by Yale Patt
- 分布式操作系统(Distributed Operating Systems) by A.S.T
- Hints for Computer System Design by Bulter Lampson
- Nand2Tetris 计算机系统要素 硬件篇
- Nand2Tetris 计算机系统要素 软件篇
- 几种常见的字符编码解析
- Computer Architecture Readings - Princeton - Review/Superscalar/VLIW
- Computer Architecture Readings - Princeton - Branch Predication/Address Translation/GPU
- 202012 Writing a simple os from scratch 看了个大概没有上手
- 202104 快速平方根倒数(Fast Inverse Square Root)
- 202104 C语言switch表格跳转的汇编实现
- 202104 int64数组转为int8数组的矢量化方式
- 202104 fast memcpy/memcmp中的SIMD
- 202104 Morsel-Driven Parallelism: A NUMA-Aware Query Evaluation Framework for the Many-Core Age @ 2014
- 202105 Automated Locality Optimization Based on the Reuse Distance of String Operations @ 2011
- 202105 Better bitmap performance with Roaring bitmaps @ 2014
- 202106 Cache-, Hash- and Space-Efficient Bloom Filters
- 202108 On the Impact of Memory Allocation on High-Performance Query Processing @ 2019
- 202108 Using Block Prefetch for Optimized Memory Performance @ AMD 2001
- 202108 Three fundamental flaws of SIMD
- 202109 各种HashMap的性能对比
- 202109 Cuckoo Filter: Practically Better Than Bloom @ 2014
- 202109 Xor Filters: Faster and Smaller Than Bloom and Cuckoo
- 202110 HashTable性能测试(CK/phmap/ska)
- 202110 虚函数的额外开销
- 202110 一段奇怪的汇编代码
- 202110 链接器与加载器(Beta2 / 20061107)
- 202110 The LMAX Architecture by Martin Fowler
- 202111 Disruptor Technical Paper @ 2011
- 202112 Understanding Compiler Optimization in LLVM
- 202112 Multicore Optimization NOTUR 2009 by Philip Mucci
- 202112 "Performance Matters" by Emery Berger
- 202112 How NOT to Measure Latency by Gil Tene
- 202203 Data Center Computers: Modern Challenges in CPU Design @ 2015
- 202204 The Linux Scheduler: a Decade of Wasted Cores @ 2016
- 202204 Algorithmica SIMD
- 202204 Algorithmica RAM & CPU Caches
- 202204 Algorithmica CompArch & Language
- 202204 Algorithmica Compilation & Profiling
- 202204 A Crash Course in Modern Hardware by Cliff Click
- 202204 The H2O distributed K/V algorithm by Cliff Click
- 202205 When the OS gets in the way - Mark Price
- 202205 Barbarians at the Gateways by Jacob Loveless
- 202205 垃圾回收的算法和实现 by 中村成洋
- 202205 TinyLFU: A Highly Efficient Cache Admission Policy @ 2015
- 202209 符号扩展的几种实现
- 202210 优化定长二进制串到整数变换
- 202210 南京大学 ICS-PA 总结
- 202210 JIT-Compiling SQL Queries in PostgreSQL Using LLVM
- 202210 Instruction Sets Want To Be Free: A Case for RISC-V
- 202212 filter range实现优化
- 202311 Firecracker: Lightweight Virtualization for Serverless Applications
- 202312 Producing Wrong Data Without Doing Anything Obviously Wrong!
1.2. linux
- linux Linux上的各种问题
- linux-proc-fs Linux /proc文件系统
- linux-tools Linux系统下的一些常用工具
- PIC位置无关代码解析
- GCC内嵌汇编代码
- 202109 The 64 bit x86 C Calling Convention
- 202301 eBPF - Rethinking the Linux Kernel
1.3. 内存
- memory 内存上的各种问题
- NUMA Non-Uniform Memory Access. 非一致性内存访问
- NUMA An Overview 关于NUMA的介绍性文章
- memory-barrier 关于内存屏障,这个问题非常复杂
- What every programmer should know about memory by Ulrich Drepper(fun).
- tcmalloc Google的开源线程缓存内存分配器,解决多线程下面内存分配效率问题。
- sanitizer Google的C++动态分析工具,可以检测内存泄漏,内存无效使用,多线程数据竞争。
- 202101 矩阵转置的cache分析
- linux memory barriers
- 202108 A Scalable Concurrent malloc(3) Implementation for FreeBSD jemalloc
- 202112 Examining applications that do not terminate on std::bad_alloc
- 202202 1024cores.net lock-free section
- 202203 Memory Ordering in Modern Microprocessors by Paul E. McKenney @ 2005
- 202207 NUMA DEEP DIVE PART 2: SYSTEM ARCHITECTURE
- 202207 NUMA DEEP DIVE PART 1: FROM UMA TO NUMA
- 202207 NUMA DEEP DIVE PART 3: CACHE COHERENCY
- 202207 NUMA DEEP DIVE PART 4: LOCAL MEMORY OPTIMIZATION
- 202208 MEMORY DEEP DIVE: DDR4 MEMORY
- 202208 MEMORY DEEP DIVE: OPTIMIZING FOR PERFORMANCE
- 202208 MEMORY DEEP DIVE: MEMORY SUBSYSTEM BANDWIDTH
- 202208 MEMORY DEEP DIVE: MEMORY SUBSYSTEM ORGANISATION
- 202208 优化数学函数案例 - Speeding up atan2f by 50x
- 202208 FizzBuzz程序优化
- 202208 优化Linux Pipe案例分析
1.4. 性能
- system-performance 系统性能的各种问题
- linux-perf Linux/Perf
- Intel VTune
- oprofile OProfile(wrapper on Linux/Perf)
- bcc & bpftrace
- systemtap 通过将探测(probe)语句编译成为内核驱动来观察系统运行情况。
- gperftools Google的应用级别性能分析工具,包含 tcmalloc.
- Optimizing software in C++ by Agner Fog
- Tips for Optimizing C/C++ Code
- Linux System and Performance Monitoring
- Linux Performance Tools by Brendan Gregg.
- 202010 系统性能:企业与云计算(Systems Performance: Enterprise and the Cloud)
- 202102 Performance Analysis and Tuning on Modern CPUs
- 202108 The Secrets of ClickHouse Performance Optimizations
- 202109 Zen of Assembly Language by Michael Abrash
- 202109 Graphics Programming Black Book by Michael Abrash
- 202109 Top-down Microarchitecture Analysis Method 分析CPU性能方法
- 202110 The LMAX Architecture by Martin Fowler
- 202112 Java at Speed by Gil Tene
- 202203 BPF Performance Tools @ Brendan Gregg
- 202203 log4j引起高CPU使用率的问题
- 202210 Computing Performance 2021 What's On the Horizon
- 202211 Thinking Clearly about Performance by Cary Millsap
- 202302 What Your Computer Does While You Wait
- 202302 Numbers Everyone Should Know
- 202409 What every systems programmer should know about concurrency
- 202410 Measuring your system’s performance using software (Go edition)
1.5. 并发
- concurrency / coroutine / lock
- One picture explain Single-Thread, Multiple-Thread, Event-Driven 一张图看懂单线程,多线程和事件驱动
- Is Parallel Programming Hard, And, If So, What Can You Do About It?
- Concurrency Hazards: Solving 11 Likely Problems In Your Multithreaded Code
- 七周七并发模型(Seven Concurrency Models in Seven Weeks) by Paul Butcher
- 202108 Benefitting Power and Performance Sleep Loops @ 2015 优化自旋锁
- 202112 Let’s talk locks!
- 202201 Lock-Based/Lock-Free/Wait-Free之间区别
- 202202 CppCon 2017: Fedor Pikus “Read, Copy, Update, then what? RCU for non-kernel programmers” by Fedor Pikus
- 202202 Branchless Programming in C++ - Fedor Pikus - CppCon 2021 by Fedor Pikus
- 202202 CppCon 2017: Fedor Pikus “C++ atomics, from basic to advanced. What do they really do?” by Fedor Pikus
- 202203 Go Scheduler: Implementing language with lightweight concurrency @ 2019
- 202410 write coroutine code using boost context
1.6. 网络
- UNP Unix网络编程(Unix Network Programming), W. Richard Stevens的神作。包含了TCP Illustrated v1里面和TCP相关的部分章节内容。
- itachi 自己两天时间写完的异步网络编程框架内核。
- libev 开源的事件触发器,被认为是更高效的libevent.
- hpserver 开源的网络编程框架,可以当做一个入门级的网络编程框架阅读。
- nmstl 开源的网络编程框架。一个很早的作品,代码十分简洁,实现了SEDA的思想。
- muduo 开源的网络编程框架,作者理想中的网络编程框架实现,里面有很多mina/netty的影子。
- kylin Baidu in-house的异步编程框架,是linsd(百度首席架构师林仕鼎)的神作,通过阅读这个框架的代码让我理解了异步编程模型。
- zeromq 开源的消息传输系统,颠覆我们思考和编写网络通信程序的方式。
- netty an asynchronous event-driven network application framework in Java based on Java NIO.
- nginx WebServer届的 要你命3000, 可以作为许多协议(HTTP/HTTPS/SMTP/POP3/IMAP/HTTP2)的反向代理服务器, 还可以作为负载均衡器,缓存服务器等。
- 深入NGINX:我们如何设计它的性能和扩展性
- finagle an extensible RPC system for the JVM, used to construct high-concurrency servers.
- HAProxy 高性能的负载均衡器,可以提供4(TCP),7(HTTP)层反向代理。
- gunicorn Python WSGI HTTP Server. green unicorn(Ruby实现)
- 202206 Introduction to HTTP/2
- 202302 对于网络延迟和带宽的理解
- 202212 Inside look at modern web browser @ 2018
1.7. 软件
- ubuntu 如何更好地使用Ubuntu. 之前使用Ubuntu有段痛苦的经历。
- macosx 如何更好地使用Mac. 以前使用Windows,后来转向Ubuntu,再后来买了个MBA.
- docker 基于lxc(linux container)的分发应用工具。 (容器实战高手课)
- vagrant 用来构件虚拟开发环境的工具,底层可以使用多种虚拟化技术。现在支持相对比较好的是VirtualBox
- sphinx C++实现的全文检索引擎,可以很容易地替换掉MySQL内置的全文检索(FTS)实现
- graphite 和 OpenTSDB 类似, 时间序列(time series)数据库, 但是主要用于监控。
- git 分布式版本控制系统. 最开始用于管理linux kernel, 现在许多开源软件托管在github上使用git管理。
- ElasticSearch 分布式的搜索引擎,而且还有非常好的插件机制和生态系统比如ELK.
- ffmpeg 视频/音频处理的瑞士军刀.
2. 数据库存储
- Storage System Reading 存储系统方面的一些文章
- Readings in Database Systems
- Design Data-Intensive Applications
- Backblaze Storage Pod 构建廉价存储服务器的厂商,将其设计以及使用公开并且做了比较深入的说明。
- NoSQL - Back to the Future or Yet Another DB Feature @2012
- Solid-state revolution: in-depth on how SSDs really work ssd发展演变,内部构造和工作方式
- 固态硬盘技术解析之垃圾回收和TRIM指令
- Coding for SSDs 为ssd设计系统的要点(和ssd底层原理)
- SSDs and Distributed Data Systems ssd对于设计分布式数据系统的影响
- The skinny on RAID 一篇关于RAID的介绍性文章
- 202205 Dremio Reflections/Views文档说明
- 202302 对于存储系统IOPS和性能的理解
- DBMS (database management system) Introduction & Implementation
- 202106 CMU DB: Database Logging & Crash Recovery
- 202105 CMU DB Multi-Version Concurrency Control
- 202105 CMU DB: Concurrency Control Theory
- 202104 CMUDB: Sort + Agg + Join
- 202104 CMU DB: Index Concurrency Control
- 202104 CMU DB: Tree Indexes
- 202104 CMU DB: Hash Index
- 202104 CMU DB: Buffer Pools
- 202103 CMU DB: Database Storage
- 202103 CMU DB: Query Processing
- 202103 CMU DB: Query Planning
- 202404 CMUDB Talk on Photon
- leveldb Google的开源kv存储系统。
- mongodb 面向文档的分布式存储系统。
- redis 内存存储系统,支持丰富的数据类型以及相应的计算,支持持久化。
- Redis Cluster Tutorial Redis Cluster入门
- Redis Manifesto
- mysql 开源关系型数据库。The world's most popular open source database.
- galera 基于MySQL的同步多主备份集群(synchronous multi-master replication cluster).
- memcached an in-memory key-value store for small chunks of arbitrary data (strings, objects) 可以用来搭建分布式缓存服务,没有持久化存储。
- rocksdb A persistent key-value store for fast storage environments. 基于 leveldb 构建
- rcfile / orcfile / parquet 几种列式存储(columnar storage)实现
- 202105 Push vs. Pull-Based Loop Fusion in Query Engines @ 2016
- 202105 Orca: A Modular Query Optimizer Architecture for Big Data @ 2014
- 202105 Albis: High-Performance File Format for Big Data Systems @ 2018
- 202106 Volcano - An Extensible and Parallel Query Evaluation System @ 1994
- 202106 C-Store: A Column-oriented DBMS @ 2005
- 202106 Integrating Compression and Execution in Column-Oriented Database Systems @ 2006
- 202106 Column-Stores vs. Row-Stores: How Different Are They Really? 2008
- 202106 Everything You Always Wanted to Know About Compiled and Vectorized Queries But Were Afraid to Ask @ 2018
- 202107 The Vertica Analytic Database: C-Store 7 Years Later
- 202108 Compilation in the Microsoft SQL Server Hekaton Engine @ 2014
- 202108 Low-Latency Compilation of SQL Queries to Machine Code
- 202110 Efficiently Compiling Efficient Query Plans for Modern Hardware @ 2011
- 202201 Apache Calcite: A Foundational Framework for Optimized Query Processing Over Heterogeneous Data Sources @ 2018
- 202204 Readings in Database Systems, 5th Edition (2015)
- 202204 Architecture of a Database System @ 2007
- 202205 Using Apache Arrow, Calcite, and Parquet to Build a Relational Cache
- 202205 Dremio C3效果分析
- 202205 Crystal: A Unified Cache Storage System for Analytical Databases @ 2021
- 202205 Columnar Storage Optimization and Caching for Data Lakes @ 2022
- 202205 FlexPushdownDB: Hybrid Pushdown and Caching in a Cloud DBMS @ 2021
- 202205 Building An Elastic Query Engine on Disaggregated Storage @ 2020
- 202205 Pocket: Elastic Ephemeral Storage for Serverless Analytics @ 2018
- 202205 PushdownDB: Accelerating a DBMS using S3 Computation @ 2020
- 202205 Amazon Redshift Re-invented @ 2022
- 202205 Umbra: A Disk-Based System with In-Memory Performance @ 2020
- 202205 Main Memory Database Systems: An Overview @ 1991
- 202205 MonetDB/X100: Hyper-Pipelining Query Execution @ 2005
- 202205 Data Processing at the Speed of 100 Gbps using Apache Crail
- 202205 42 things I learned from building a production database
- 202206 Inside the SQL Server Query Optimizer @ 2010
- 202206 Relaxed Operator Fusion for In-Memory Databases @ 2017
- 202208 Designing a Userspace Disk I/O Scheduler for Modern Datastores: the ScyllaDB example @ 2016
- 202208 ScyllaDB’s New IO Scheduler @ 2021
- 202210 JIT-Compiling SQL Queries in PostgreSQL Using LLVM
- 202301 FSST: Fast Random Access String Compression @ 2020
- 202301 The Five Minute Rule 1987 @ 1987
- 202301 The Five Minute Rule 1997 @ 1997
- 202311 Exploiting Cloud Object Storage for High-Performance Analytics
- 202311 The Story of AWS Glue
- 202311 A Deep Dive into Common Open Formats for Analytical DBMSs
- 202311 Efficient External Sorting in DuckDB
- 202311 Chimp: Efficient Lossless Floating Point Compression for Time Series Databases
- 202311 SQL MM in Oracle9i @ 2002
- 202312 Adaptive self-tuning memory in DB2 @ 2006
- 202312 LeanStore: In-Memory Data Management Beyond Main Memory
- 202312 Napa: Powering Scalable Data Warehousing with Robust Query Performance at Google
- 202312 SQLite: Past, Present, and Future
- 202312 Cloud-Native Transactions and Analytics in SingleStore
- 202312 Photon: A Fast Query Engine for Lakehouse Systems
- 202403 FoundationDB: A Distributed Unbundled Transactional Key Value Store @ 2021
- 202405 Self-Tuning Query Scheduling for Analytical Workloads
- 202405 Integrating Deep Learning Frameworks into Main-Memory Databases
- 202409 BOSS - An Architecture for Database Kernel Composition vldb2024
- 202409 Adaptive and Robust Query Execution for Lakehouses at Scale vldb2024
- 202409 Neo A Learned Query Optimizer vldb2019
- 202409 LeanStore A High-Performance Storage Engine for NVMe SSDs vldb2024
- 202409 Databases Unbound Querying All of the World’s Bytes with AI vldb2024
- 202409 Two Birds With One Stone Designing a Hybrid Cloud Storage Engine for HTAP vldb2024
- 202409 Presto's History-based Query Optimizer vldb2024
- 202409 AI Meets Database- AI4DB and DB4AI sigmod 2021
- 202409 SCOPE Easy and Efficient Parallel Processing of Massive Data Sets vldb2008
- 202409 PilotScope Steering Databases with Machine Learning Drivers vldb2024
- 202410 JSON Tiles Fast Analytics on Semi-Structured Data sigmod2021
- 202410 The Art of Latency Hiding in Modern Database Engines vldb2024
- 202410 SingleStore-V An Integrated Vector Database System in SingleStore vldb2024
- 202410 ClickHouse - Lightning Fast Analytics for Everyone vldb2024
- 202410 Tidy Tuples and Flying Start Fast Compilation and Fast Execution of Relational Queries in Umbra
- 202410 What Goes Around Comes Around, And Around sigmod record 2024
- 202410 What Modern NVMe Storage Can Do, And How To Exploit It vldb2023
- 202410 BigLake BigQuery’s Evolution toward a Multi-Cloud Lakehouse sigmod2024
3. 算法数据结构
- General Algorithm 通用算法
- Matters Computational
- Hacker Delight
- Cracking The Coding Interview 据说算法分为三种:面试算法,ACM算法,算法=D
- Do You Think You Have a Gambling Problem? 赌博其实是概率问题
- Probabilistic Data Structures for Web Analytics and Data Mining 用于Web分析和数据挖掘的概率化数据结构
- Computational Advertising 计算广告
- Bitcoin: A Peer-to-Peer Electronic Cash System 比特币论文
- 统计思维-程序员数学之概率统计
- snappy Google的开源压缩解压库。在满足一定压缩比率的条件下着重提升压缩和解压速度。
- lzf redis 使用的开源压缩解压库。轻量(两个文件)可以很容易地独立纳入项目。
- lzma Lempel-Ziv-Markov chain-Algorithm ,压缩速度相对较慢但是压缩比超高。
- zopfli https://github.com/google/zopfli/
- brotli https://github.com/google/brotli/
- zstd https://github.com/facebook/zstd
- 201801 Find 10 digits prime in consecutive digits of e
- 201808 Protobuf Encoding Protobuf编码方式
- 202001 LZW算法的Python实现
- Sparser Raw Filtering for Faster Analytics over Raw Data
- 算法设计指南(The Algorithm Design Manual) by Steven Skiena
- 202101 几个PopCount的实现
- 202106 两个ascii字符串中相同字符数量
- 202106 Voltnisky字符串搜索算法
- 202108 计算整数长度
- 202108 设计良好的非加密Hash函数
- 202108 快速平方根倒数(talk pdf)
4. 机器学习
- Machine Learning Reading 机器学习方面的一些文章
- Machine Learning the Hard Way 用ML来赌马
- Deconstructing Recommender Systems 关于推荐系统的介绍性文章
- Why you should be Spot-Checking Algorithms on your Machine Learning Problems
- A Tour of Machine Learning Algorithms
- 机器学习里,数学究竟多重要?
- Use Random Forest: Testing 179 Classifiers on 121 Datasets
- 深度學習(Deep Learning)自學素材推薦
- Getting Started with Machine Learning by Jim Liang
- Best Practices for Applying Deep Learning to Novel Applications
- 机器学习规则 (Rules of Machine Learning):关于机器学习工程的最佳实践
- Generative Adversarial Networks: The Basic Idea
- Choosing the right estimator(sklearn)
- ROC各种指标 TPR, FPR, Precision, Recall
- sklearn python scikit learn. Python的机器学习包.
- caffe C++实现的深度学习框架,有python和matlab的扩展接口
- nolearn scikit-learn compatibile wrapper for neural nets. 底层可以使用不同的NN实现比如 caffe, lasagne.
- 数学之美 wujun
- 统计学习方法 李航
- 机器学习 Tom M. Mitchell
- 机器学习基石 on Coursera
- 机器学习技法 on Coursera
- Neural Networks for Machine Learning on Coursera
- Mining Massive Datasets on Coursera 挖掘大规模数据
- Statistical Data Mining Tutorials by Andrew W. Moore
- Coursera: Machine Learning by Andrew Ng 证书
- kaggle比赛代码 and 机器学习算法的python实现
- Machine Learning for Trading
- Coursera: Neural Networks and Deep Learning by Andrew Ng 证书
- Coursera: Improving Deep Neural Networks by Andrew Ng 证书
- Coursera: Structuring Machine Learning Projects by Andrew Ng 证书
- Coursera: Convolutional Neural Networks by Andrew Ng 证书
- Coursera: Sequence Models by Andrew Ng
- 201801 微信跳一跳的自动化
- 机器学习系统设计(Building Machine Learning Systems with Python)
- CNN(卷积神经网络)入门
5. 分布式系统
5.1. Projects
- Storm Twitter的流式处理系统
- Hadoop Apache的分布式系统基础架构总称
- HDFS Apache Hadoop项目的 GFS 开源实现
- HBase Apache Hadoop项目的 BigTable 开源实现
- MapReduce Apache Hadoop项目的 MapReduce 开源实现
- OpenTSDB 在 HBase 上构建的时间序列(time series)数据库
- Impala Cloudera的 Dremel 开源实现
- Presto Facebook的 Dremel 开源实现
- Spark AMPLab的分布式计算系统
- Paxos / Raft 分布式共识算法
- Distributed systems for fun and profit
- Design Data-Intensive Applications
5.2. Articles
- Google I/O 2009 - Transactions Across Datacenters
- Large-Scale Deep Learning for Intelligent Computer Systems @ 2016 Jeff Dean
- Achieving Rapid Response Times in Large Online Services @ 2012 Jeff Dean
- Why Google Stores Billions of Lines of Code in a Single Repository @ 2016
- Thoughts on Systems for Large Datasets: Problems and Opportunities @ 2014 Jeff Dean
- A Glance on StreamBase 之前调研过的商用流式处理系统
- Cloudera Impala: Real-Time Queries in Apache Hadoop, For Real @2012
- MapReduce Patterns, Algorithms, and Use Cases @2012
- 7 Tips for Improving MapReduce Performance @2009
- Using HBase with ioMemory by fusion-io
- 阿里HBase业务设计实践 @ 2012
- HBase Log Splitting @2012
- HBase Write Path @ 2012
- Why not RAID-0? It's about Time and Snowflakes @2012
- Hadoop I/O: Sequence, Map, Set, Array, BloomMap Files @2011
- HA Namenode for HDFS with Hadoop 1.0 @2012
- Hadoop Distributed Filesystem reliability with Namenode and Avatarnode @2012
- Hadoop即将过时了吗? @2012
- Apache Hadoop Goes Realtime at Facebook @2011
- The dark side of Hadoop - BackType Technology @2011
- Best Practices for Selecting Apache Hadoop Hardware @2011
- Manhattan, our real-time, multi-tenant distributed database for Twitter scale @ 2014
- Introducing Apache Hadoop YARN @ 2012
- Under the Hood: Scheduling MapReduce jobs more efficiently with Corona @ 2012
- Druid, Part Deux: Three Principles for Fast, Distributed OLAP @2011
- Introducing Druid: Real-Time Analytics at a Billion Rows Per Second @2011
- Project Voldemort: Scaling Simple Storage at LinkedIn @ 2009
- Building a terabyte-scale data cycle at LinkedIn with Hadoop and Project Voldemort @ 2009
- What does it take to make Google work at scale? @2015
- mesos, omega, borg: a survey @2015
- What it takes to run Stack Overflow @2013.11
- Microservices - Not A Free Lunch!
- Scaling lessons learned at Dropbox
- Building a Production Machine Learning Infrastructure 构建用于生产的ML基础架构(如何平衡算法和工程)
- Service-Disoriented Architecture 对SOA(和microservices)的反思
- Questioning the Lambda Architecture @2014
- Lessons Learned while Working on Large-Scale Server Software
- Project Tungsten: Bringing Spark Closer to Bare Metal 优化Spark性能的一篇文章
- Notes on Distributed Systems for Young Bloods 写给分布式系统新手的笔记
- Possible Hadoop Trajectories by Michael Stonebraker
- What Does 'Big Data' Mean? by Michael Stonebraker
- A Typical Data Processing System
- Hadoop at a Crossroads? by Michael Stonebraker
- The Log: What every software engineer should know about real-time data's unifying abstraction
- Analysis of HDFS Under HBase: A Facebook Messages Case Study @2014
- On Designing and Deploying Internet-Scale Services @2007
- Building Data Science Teams
- Application Resilience in a Service-oriented Architecture
- A Word on Scalability
- Lessons Learned While Building Infrastructure Software at Google @XLDB-2013 Jeff Dean
- In-Stream Big Data Processing 流式处理系统一些需要解决的问题以及方法
- Beating the CAP Theorem Checklist "遇到声称能突破CAP原理的民科的时候,用这个checklist来对付他" via @delphij
- 探索Google App Engine背后的奥秘
- Real-Time Big Data Analytics: Emerging Architecture
- The Tail at Scale @2013 CACM Jeff Dean
- Designs, Lessons and Advice from Building Large Distributed Systems @LADIS-2009 Jeff Dean
- Large-Scale Data and Computation: Challenges and Opportunities @Stanford-2013 Jeff Dean
- MapReduce: A Minor Step Forward James Hamilton对PDBMS和MR的看法
- Distributed Algorithms in NoSQL Databases
- MapReduce Versus Parallel DBMS
- MapReduce and Parallel DBMSs: Friends or Foes? PDBMS阵营和MR阵营达成和解
- MapReduce: A Flexible Data Processing Tool MR阵营对PDBMS阵营的回应
- A Comparison of Approaches to Large-Scale Data Analysis
- MapReduce: A major step backwards-ii PDBMS阵营对MR阵营的第二轮批评
- MapReduce: A major step backwards PDBMS阵营对MR阵营的批评
- How to beat the CAP theorem
- Case Study GFS: Evolution on Fast-forward @2009 GFS1
- Web Search for a Planet @2003 Google Web Search
- Building Software Systems at Google and Lessons Learned @Stanford-2010 Jeff Dean
- Data Structures and Algorithms for Big Databases
- Building Scalable, Highly Concurrent & Fault-Tolerant Systems: Lessons Learned
- The Anatomy Of The Google Architecture @2009 Google架构的深入解析,属于非官方文档,是一个非Google的友人收集各种资料汇集起来的
- You Can't Sacrifice Partition Tolerance
- 201604 Data Infrastructure at Airbnb
- 201606 Anacoda High Performance Solution
- 201711 Getting Real About Distributed System Reliability Jay Kreps (分布式系统的真实的可靠性)
- 201712 Timeline at Scale in Twitter by Raffi Krikorian @ 2013
- 201808 YouTube Scalability on youtube
- 201810 Fallacies of Distributed Computing Explained
- 202101 Certificate Transparency 证书透明
- 202108 The Next Phase of Cloud Computing @ 2021
- 202301 Stack Overflow: The Architecture - 2016 Edition
5.3. Papers
- The Dataflow Model: A Practical Approach to Balancing Correctness, Latency, and Cost in Massive-Scale, Unbounded, Out-of-Order Data Processing @ 2015
- An Architecture for Fast and General Data Processing on Large Clusters
- Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing @ 2012
- Spark: Cluster Computing with Working Sets @ 2010
- PNUTS: Yahoo!'s Hosted Data Serving Platform @ 2008
- Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center @ 2010
- Serving Large-scale Batch Computed Data with Project Voldemort @ 2012
- MillWheel: Fault-Tolerant Stream Processing at Internet Scale @ 2013
- Finding a needle in Haystack: Facebook's photo storage @ 2010
- Photon: Fault-tolerant and Scalable Joining of Continuous Data Streams @ 2013
- FlumeJava: Easy, Efficient Data-Parallel Pipelines @ 2010
- Ceph: A Scalable, High-Performance Distributed File System @ 2006
- 202106 Large-scale cluster management at Google with Borg (revisited) @ 2015
- Large-scale cluster management at Google with Borg @ 2015
- Omega: flexible, scalable schedulers for large compute clusters @ 2013
- Time, Clocks, and Ordering of Events in a Distributed System
- Cassandra - A Decentralized Structured Storage System @ 2009
- Dynamo: Amazon's Highly Available Key-value Store @ 2007
- Google-Wide Profiling: A Continuous Profiling Infrastructure for Data Centers @ 2010
- Dapper, a Large-Scale Distributed Systems Tracing Infrastructure @ 2010
- F1: A Distributed SQL Database That Scales @ 2013
- F1: The Fault-Tolerant Distributed RDBMS Supporting Google's Ad Business @ 2012
- Spanner: Google's Globally-Distributed Database @ 2012
- Megastore: Providing Scalable, Highly Available Storage for Interactive Services @ 2011
- Tenzing A SQL Implementation On The MapReduce Framework @ 2011
- Large-scale Incremental Processing Using Distributed Transactions and Notifications @ 2010
- Pregel: A System for Large-Scale Graph Processing @ 2010
- Processing a Trillion Cells per Mouse Click @ 2012
- Dremel: Interactive Analysis of Web-Scale Datasets @ 2010
- Pig Latin: A Not-So-Foreign Language for Data Processing @ 2010
- ZooKeeper: Wait-free coordination for Internet-scale systems @ 2010
- HDFS scalability: the limits to growth @ 2010
- HDFS Reliability @ 2008
- The Hadoop Distributed File System @ 2010
- Kafka: a Distributed Messaging System for Log Processing @ 2012
- Bigtable: A Distributed Storage System for Structured Data @ 2006
- MapReduce: Simplified Data Processing on Large Clusters @ 2004
- The Google File System @ 2003
- The Chubby lock service for loosely-coupled distributed systems @ 2006
- 201712 Nobody ever got fired for buying a cluster 计算集群的必要性思考 @ 2013
- The Datacenter as a Computer @ 2009 介绍“现代”计算中心的各个方面
- 202008 The Design of a Practical System for Fault-Tolerant Virtual Machines @ 2010 支持容错的虚拟机(VMWare)
- 202009 Object Storage on CRAQ @ 2009
- 202010 Frangipani: A Scalable Distributed File System @ 1997
- 202010 The Snowflake Elastic Data Warehouse @ 2016
- 202012 Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases @ 2017
- 202012 MSR FaRM: distributed transactions with consistency, availability, and performance @ 2015
- 202101 Don’t Settle for Eventual: Scalable Causal Consistency for Wide-Area Storage with COPS @ 2011
- 202103 Mesa: Geo-Replicated, Near Real-Time, Scalable Data Warehousing by Google @ 2014
- 202103 Kudu: Storage for Fast Analytics on Fast Data @ 2015
- 202103 Procella: Unifying serving and analytical data at YouTube by Google @ 2019
- 202103 Impala: A Modern, Open-Source SQL Engine for Hadoop @ 2015
- 202103 Spark SQL: Relational Data Processing in Spark by Databricks @ 2015
- 202103 Scaling Memcache at Facebook by Facebook @ 2013
- 202107 Piccolo: Building Fast, Distributed Programs with Partitioned Tables @ 2010
- 202108 Druid: A Real-time Analytical Data Store @ 2014
- 202109 Efficient Query Processing with Optimistically Compressed Hash Tables & Strings in the USSR @ 2020
- 202201 Presto: SQL on Everything @ 2019
- 202203 Cloud Programming Simplified: A Berkeley View on Serverless Computing @ 2019
- 202203 Delta Lake: High-Performance ACID Table Storage over Cloud Object Stores @ 2020
- 202204 F1 Query: Declarative Querying at Scale @ 2018
- 202312 The Dataflow Model: A Practical Approach to Balancing Correctness, Latency, and Cost in Massive-Scale, Unbounded, Out-of-Order Data Processing @ 2015
- 202405 Dremel A Decade of Interactive SQL Analysis at Web Scale @ 2020
- 202405 The Gluten Open-Source Software Project @ 2023
6. 程序设计语言
语言相关:
- C++
- Scheme
- The Little Schemer
- The Seasoned Schemer
- SICP/Structure and Interpretation of Computer Programs
- ANSI Common Lisp
- 202006 PLAI笔记 Programming Langauge Application and Interpretation
- Java
- 专栏文章
- Core Java Volume1 - Fundamentals Java核心技术卷1-基础知识
- Core Java Volume2 - Advances Features Java核心技术卷2-高级特性
- Java Tools
- Maven 用来管理Java项目
- JNI Java Native Interface
- JVM Java Virtual Machine
- 201911 Java语言设计好的一面
- 202006 Spring实战第三版
- 202301 Best practices for using the Java Native Interface
- 202311 使用ByteBuddy来截获Java类实现
- Clojure
- Python
- Efficiently Exploiting Multiple Cores with Python 如何有效使用多核
- IPython 交互式Python环境,Notebook也非常适合实验
- Inside the Python GIL by David Beazley @ 2009
- Go
- Go语言编程 by 许式伟,吕桂华
- Go Course Day by Robe Pike
- Scala
- Erlang
- Erlang程序设计 by Joe Armstrong
- Lua
- Lua程序设计 by Roberto 译 周惟迪
- The Implementation of Lua 5.0 中译
- OpenResty最佳实践/Lua
- 201907 Lua Application Programming
- Javascript
- 201905 JavaScript原型链测试代码
- 201905 JavaScript语言精粹
语言无关:
- thoughts on programming language 程序设计语言的思考和概念
- compiler course cs143
- coursera: fp in scala
- continuation
- build-system 在实现Baidu in-house的构建工具 comake2 之前做的构建系统调研总结.
- swig C/C++多语言扩展接口生成器. 使用起来非常方便, 但是本身不太完善, 比较适合用于原型系统.
- 虚拟机设计与实现(Virtual Machine Design and Implementation in C/C++)
- An Incremental Approach to Compiler Construction by Abdulaziz Ghuloum
- 202106 Notes on Programming by Alexander Stepanov
7. 软件设计
7.1. Articles
- Open Source License 一些常见的开源协议
- Culture At Netflix (pdf)
- Software Engineering at Google by Fergus Henderson
- Mean People Fail by Paul Graham.
- Teach Yourself Programming in Ten Years by Peter Norvig
- Complexity is the enemy 复杂是…敌人
- Google I/O 2011: Programming Well with Others: Social Skills for Geeks
- Google I/O 2009 - The Myth of the Genius Programmer
- In-House Programmer Joel on Software
- Make Non-Obvious Hires 如何找到那些潜在的员工
- The Rise of "Worse is Better"
- Lessons Learned From Reading Postmortems
- Developers Who Can Build Things from Scratch
- Engineering Management
- Good and Bad Reasons to Become an Entrepreneur
- How to Avoid One of the Costliest Mistakes in Software Engineering 是否需要重写系统?
- Advice for ambitious 19 year olds 其实受用于更加广泛的人群
- Generalists and specialists: thoughts on hiring 全栈 vs. 专家
- Ten Career Lessons
- The Anatomy of the Perfect Technical Interview from a Former Amazon VP 如何安排面试
- 非常推荐 10 Lessons Learned from the Early Days of Google by Matt Cutts
- Netflix Culture: Freedom & Responsibility(自由与责任)
- VP Engineering vs. CTO
- History of Apache Storm and lessons learned
- What are the best-kept secrets of great programmers?
- An Interview With Edsger W. Dijkstra
- A Conversation with Werner Vogels
- Linux Kernel Management Style
- Applied Philosophy, a.k.a "Hacking"
- Systems Software Research is Irrelevant by Rob Pike
- Your Server as a Function
- On Working Remotely
- How to Read a Paper
- Programmer's dilemma
- Writing Software is Like … Writing
- Systems Programming at Twitter
- The Tyranny of the Clock
- Suffering-oriented programming
- T11谈架构(On Architecture)
- T11谈文艺模型(On Backpressure)
- 201509 Tips for work-life balance
- 201509 What Happens to Older Developers?
- 201509 A Love for Legacy
- 201510 A Decade at Google
- 201510 Aaron Swartz: How to Get a Job Like Mine
- 201510 Why Continuous Deployment just keeps on giving
- 201510 chasing the shiny and new (追逐时髦的技术)
- 201510 Making money along the way
- 201510 Competitors Are Not The Enemy
- 201510 Ten Rules for Open Source Success
- 201510 Lessons learned writing highly available code
- 201510 Climbing The Wrong Hill
- 201510 Learn to stop using shiny new things and love MySQL
- 201511 Why I stopped paying attention to industry news
- 201512 The Secret to Career Success
- 201512 Remove the stress, pick a deadline
- 201512 Before you code, write.
- 201512 Employee Equity
- 201512 A great developer can come from anywhere
- 201512 What would it take to prove me wrong?
- 201512 How To Launch a Mac App and Become #1 Top Paid App Globally
- 201604 Atlassian $5.5b user onboarding magic
- 201604 Don't Call Yourself A Programmer
- 201604 Why Can't Programmers.. Program?
- 201604 Finding Great Developers
- 201604 Programmers are distraction for your startup
- 201604 Surviving meetings while remote
- 201604 Automate to save mental energy, not time
- 201604 Starters and Maintainers
- 201605 关于工作年限和管理的问题 by nullgate
- 201605 Facebook公司内部PPT分享:如何高效工作
- 201606 Anacoda High Performance Solution
- 201606 32c3-7196-en-How_the_Great_Firewall_discovers_hidden_circumvention_servers GFW如何发现代理服务器
- 201606 10 Lessons from 10 Years of Amazon Web Services
- 201606 Getting Things Done When You're Only a Grunt by Joel Spolsky
- 201606 Facebook NewsFeed
- 201606 为什么MIT停止教授SICP
- 201606 Anacoda High Performance Solution
- 201606 How to Pick Your Battles on a Software Team
- 201606 "I know how to program, but I don't know what to program"
- 201606 Top 10 Things that Makes You a Good Programmer
- 201608 What Makes A Great Software Engineer?
- 201608 The Future of Programming by Bret Victor
- 201609 Laws of Performant Software
- 201609 A Little Architecture
- 201610 Silicon Valley Etiquette 硅谷礼仪
- 201610 Vinod Khosla: Failure does not matter. Success matters.
- 201610 Becoming CTO
- 201610 Taking PHP Seriously
- 201610 The Effective Engineer
- 201703 Software Engineering at Google by Fergus Henderson
- 201705 What to do when Your Colleague Creates Spaghetti Code
- 201706 44 engineering management lessons
- 201706 The Evolution of Code Deploys at Reddit
- 201707 Making Photos Smaller Without Quality Loss
- 201707 Reducing Image File Size at Etsy
- 201707 Why Did So Many Startups Choose NoSQL?
- 201707 Search at Slack Slack在搜索排序方面的工作
- 201707 Scaling to Billions on Top of DigitalOcean
- 201708 The Feynman Technique: The Best Way to Learn Anything
- 201712 Simple Made Easy by Rich Hickey
- 201801 26 Lessons From Being a Developer at a Startup
- 201808 YouTube Scalability on youtube
- 201810 What's a senior engineer's job?
- 201810 GitHub Flow
- 201810 Writing system software: code comments
- 201811 Keras之父写给年轻程序员的33条忠告
- 201811 {Ask HN}What's the largest amount of bad code you have ever seen work?
- 201901 Instagram Engineering’s 3 rules to a scalable cloud application architecture
- 201903 Instagram Under the Hood
- 201903 StranglerApplication 扼杀者应用(如何有效安全地替换掉老的应用)
- 201904 Polyplot Persistence 混合使用各种存储系统
- 201905 Codehaus宣言
- 201905 Joe Duffy's Software Leadership Series
- 201905 12个软件工程经典错误
- 201907 The Law of Leaky Abstractions 抽象泄露法则 by Joel Spolsky
- 201907 Things You Should Never Do, Part I by Joel Spolsky
- 202004 The Little Manual of API Design
- 202103 There’s plenty of room at the Top: What will drive computer performance after Moore’s law? @ 2020
- 202208 Building a Career in Technology
- 202210 How did you learn so much stuff about Oracle? by Cary Millsap
- 202210 Rob Pike's 5 Rules of Programming
- 202211 使用Chrome Trace Viewer来观察调度
7.2. Books
- 编程大师访谈录 by Susan Lammers
- 代码大全(Code Complete) by Steve McConnell
- 程序设计实践(The Practice of Programming) by Kernighan and Rob Pike
- Hints for Computer System Design by Bulter Lampson
- 编写可读代码的艺术(The Art of Readable Code) by Boswell and Foucher
- 编程珠玑(Programming Pearls) by Jon Bentley
- 程序员修炼之道-从小工到专家(The Pragmatic Programmer) by Andrew Hunt/David Thomas
- 松本行弘的程序世界 by Matz
- 编程人生(Coders at Work) by Peter Seibel
- 高效能程序员的修炼:软件开发远不止是写代码那样简单(Effective Programming: More Than Writing Code) by Jeff Atwood
- 程序员的呐喊(A Programmer's Rantings) by Steve Yegge
- 观止-微软创建NT和未来的夺命狂奔(Showstopper!: The Breakneck Race to Create Windows NT and the Next Generation at Microsoft)
- 我是高频交易工程师
- How to be a Programmer
- 代码的未来 by 松本行弘
- Getting Real by 37 Signals
- Rework by 37 Signals
- 改变未来的九大算法(Nine Algorithms that Changed the Future) by John. McCormick
- 程序员的思维修炼(Pragmatic Thinking and Learning - Refactor Your Wetware)
- 高质量程序设计艺术(Code Quality The Open Source Perspective)
- 重构-改善既有代码的设计(Refactoring: Improving the Design of Existing Code)
- 梦断代码(Dreaming in Code)
- 人月神话(The Mythical Man-Month) by Fred Brooks
- Unix程序设计艺术(The Art of Unix Programming) by Eric Raymond
- 编程精粹-Microsoft编写优质无错代码的秘诀(Writing Clean Code)
- 黑客与画家(Hackers and Painters) by Paul Graham
- 大教堂与市集(The Cathedral and the Bazaar) by Eric Raymond
- Design Patterns Elements of Reusable Object-Oriented Software
- 风险投资(Venture Captial) 摘自 <浪潮之巅>
- 浪潮之巅(On Top of Tides) by 吴军
- Producing Open Source Software
- Concurrent Programming for Scalable Web Architectures
- The Architecture of Open Source Applications
- 金融市场 on Coursera
- 竞争策略 on Coursera
- Design Reading 软件设计方面的一些文章
- 202006 禅与摩托车维修艺术(Zen and the Arts of Motorcycle Maintenance) by Robert Pirsig
- 202006 程序员健康指南(The Healthy Programmer) by Joe Kutner
- 202006 设计模式Head First
- 202010 SRE Google运维解密(SRE: How Google Runs Production Systems)
- 202012 程序员的自我修养 by 陈逸鹤
- 202012 我编程,我快乐(The Passionate Programmer) by Chad Fowler
- 202101 代码之美(Beautiful Code) by Grey Wilson
- 202205 垃圾回收的算法和实现 by 中村成洋
- 202208 Code Simplicity by Max Kanat-Alex
- 202312 Always Measure One Level Deeper by JOHN OUSTERHOUT
8. 网络资源
8.1. Blogs
- jwz. blog & doc "you can divide our industry into two kinds of people: those who want to go work for a company to make it successful, and those who want to go work for a successful company. " - jwz)
- Leslie Lamport. http://research.microsoft.com/en-us/um/people/lamport/pubs/pubs.html
- James Hamilton. http://mvdirona.com/jrh/work/
- Jeff Dean. http://research.google.com/people/jeff/
- Rob Pike. http://www.herpolhode.com/rob/
- Russ Cox. https://swtch.com/~rsc/
- Matt Welsh. http://www.mdw.la/
- Joe Armstrong. http://joearms.github.io/
- Robert Morris. http://pdos.csail.mit.edu/~rtm/
- Matei Zaharia. http://people.csail.mit.edu/matei/
- R. Kent Dybvig. http://www.cs.indiana.edu/~dyb/
- 陈寅恪 http://en.wikipedia.org/wiki/Chen_Yinke (对科学院的答复)
- 蔡元培 http://en.wikipedia.org/wiki/Cai_Yuanpei
- Werner Vogels. http://www.allthingsdistributed.com/
- Nathan Marz. http://nathanmarz.com/
- Matt Might. http://matt.might.net/
- Jeff Preshing. http://www.preshing.com/
- Herb Sutter. http://www.gotw.ca/
- Peter Hintjens. http://hintjens.com/
- Bret Victor. http://worrydream.com/#!/TheFutureOfProgramming
- Wes McKinney. http://wesmckinney.com/archives.html
- Petr Mitrichev. https://petr-mitrichev.blogspot.com/
- Mechanical Sympathy : http://mechanical-sympathy.blogspot.co.at
- Paper Trail : http://the-paper-trail.org/blog/
- Systems We Make : http://www.systemswemake.com
- 37Signals : http://signalvnoise.com/
- Percona : http://www.mysqlperformanceblog.com/
- DBMS 2 : http://www.dbms2.com/ # Database
- Small Datum : http://smalldatum.blogspot.com/
- IT Hare on Soft.ware : http://ithare.com/
- Coding Horror - https://blog.codinghorror.com/
- Code Without Rules - https://codewithoutrules.com/
- 陈皓 http://coolshell.cn/
- 王垠 http://www.yinwang.org/
- 云风的 BLOG - http://codingnow.com/
- The Shape of Code http://shape-of-code.coding-guidelines.com/
- Julia Evans https://jvns.ca/
- Daniel Lemire's blog – https://lemire.me/blog/
- Wojciech Muła Programming http://0x80.pl/articles/index.html
8.2. Conferences
- Strange Loop http://www.thestrangeloop.com/about.html
- USENIX Conferences | USENIX https://www.usenix.org/conferences
- VLDB Proceedings of the VLDB Endowment
- SIGMOD SIGMOD Record – Current Issue
8.3. Articles
- High Scalability - All Time Favorites : http://highscalability.com/all-time-favorites/
- What every computer science major should know - http://matt.might.net/articles/what-cs-majors-should-know/
- What every programmer should know about memory, Part 1 [LWN.net] - https://lwn.net/Articles/250967/
9. 阅读笔记
9.1. 人物传记
- 史蒂夫乔布斯传(Steve Jobs)
- 富甲美国(Made in America) by Sam Walton
- 鞋狗(Shoe Dog) by Phil Knight
- 乔纳森传(Jonathon Ive)
- 中的精神(吴清源自传)
- YouTube创始人陈士骏自传
- 编年史(Like A Rolling Stone) of Bob Dylan
- 奉上幸福(Devliering Happiness) by 谢家华
- 任正非文集 by 华为和互联网
- 大数学家 by 陈诗谷 / 葛孟曾
- 天才引导的历程(Journey through Genius) by William Dunham
- 费曼讲物理-入门(Six Easy Pieces) by Richard P. Feynman
- 201906 盖茨是这样培养的
- 202012 当我谈跑步时我谈些什么 by 村上春树
- 202012 香农传(A Mind at Play)
- 202012 若为自由故(Free as in Freedom) RMS自传
- 202012 刷新(Hit Refresh)
- 202101 战胜一切市场的人(A Man for All Markest) 爱德华夏普自传
- 202305 创造(Build: An Unorthodox Guide to Making Things Worth Making) by Tony Fadell
- 202308 Confessions of a Advertising Man(一个广告人的自白) by 大卫奥维格
9.2. 历史社会
- 娱乐至死(Amusing Ourselves to Death) by Neil Postman
- 狂热分子(True Believer) by Eric Hoffer
- 乌合之众(The Crowd) by Gustave Le Bon
- 创业维艰:如何完成比难更难的事 by Ben Horowitz
- 经济学人(The Economist) by Schumpeter(熊彼特)
- 斯坦福极简经济学(The Instant Economist) by 蒂莫西·泰勒
- 黑箱社会(The Black Box Society) by Frank Pasquale
- 智能时代 by 吴军
- 知乎周刊-日常经济学
- 极简欧洲史(The Shortest History of Europe) by John Hirst
- 谷歌是如何运营的(How Google Works) by Eric Schmidt
- 支付战争(The PayPal Wars) by Eric Jackson
- 从0到1(From Zero To One) by Peter Thiel
- 伟大的博弈: 华尔街金融帝国的崛起 by John Gordon
- 向前一步(Lean In) by Sheryl Sandberg
- 股票作手回忆录(Reminiscences of stock broker) by Jesse Livermore
- 谁建造了美国(The men who built America) by 网易公开课
- 增长黑客(Growth Hacker) by 范冰
- 信号与噪声: 大数据时代预测的科学与艺术 by Nate Silver
- 中国人的焦虑从哪里来 by 茅于轼
- Facebook效应(The Facebook Effect)
- 牛奶可乐经济学(The Economic Naturalist)
- 风险投资(Venture Captial) 摘自 <浪潮之巅>
- 一个广告人的自白(Confessions of an Advertising Man)
- 监守自盗(Inside Job)
- 浪潮之巅(On Top of Tides) by 吴军
- 如何解题-数学思维新方法 by George Polya
- 理想国(Republic) by Plato
- 大数据时代:生活、工作与思维的大变革
- 竞争策略 on Coursera
- 金融市场 on Coursera
- 风吹江南之互联网金融 by 陈宇
- 信息规则(Information Rules) by [美] 卡尔・夏皮罗(Carl Shapiro) / [美] 哈尔・瓦里安(Hal Varian)
- 中国人应该这样用药 by 冀连梅
- 刻意培养(Intentional Parenting) 《遇见孩子,遇见更好的自己》
- 202010 策略思维(Thinking Strategically) by 迪克西特,奈尔伯夫
- 202011 数学家妙谈股市(A Mathematician Plays the Stock Market) by John Allen Paulos
- 202011 上瘾五百年(Forces of Habit) by 戴维·考特莱特
- 202011 爱,金钱和孩子(Love, Money, and Parenting)
- 202012 经济学的思维方式(Basic Economics : A Common Sense Guide to the Economy) by 托马斯索维尔
- 202012 只有偏执狂才能生存 如何利用战略转折点(Crisis Points)
- 202102 投资中最简单的事 by 邱国鹭
- 202205 东京一年 by 蒋方舟
- 202211 易经的奥秘 cctv 曾仕强
- 202301 中国式管理行为 - 结语 曾仕强
- 202301 工作:巨变时代的现状、挑战与未来(The Job: Work and Its Future in a Time of Radical Change)
- 202305 文明之光 by 吴军
- 202305 抢占心智 by 江南春
- 202308 Homo Deus:A Brief History of Tomorrow(未来简史)
- 202308 巴菲特致股东的信(The Essays of Warren Buffett)
- 202308 Sapiens: A Brief History of Humankind(人类简史)
- 202312 无限的游戏(The Infinite Game) by Simon Sinek (see also "The Golden Circle")
- 202407 生命3.0 Max Tegmark
9.3. 小说杂文
- 麦田里的守望者(The Catcher in The Rye) by Jerome Salinger
- 教父(God Father) by Francis Coppola
- 动物庄园(Animal Farm) by George Orwell
- 1984 by George Orwell
- 狼图腾(Wolf Totem) by 姜戎
- 那个人好像一条狗 周星驰 <大圣娶亲>
- 三体(Three Body) by 刘慈欣
- 小王子(The Little Prince) by Antoine de Saint-Exupéry
- 星球大战(Star Wars)
- 李可乐抗拆记 by 李承鹏
- 银河系漫游指南(The Hitchhiker's Guide to the Galaxy) by Douglas Adams
- 献给阿尔吉侬的花束(Flowers for Algernon)
- 沉默的大多数 by 王小波
- 临高启明 by 吹牛者
- 202006 禅与摩托车维修艺术(Zen and the Arts of Motorcycle Maintenance) by Robert Pirsig
- 202101 百年孤独(Cien años de soledad) 加西亚马尔克斯 / 范晔
- 202305 莎士比亚戏剧集
- 202308 晚明 by 柯山梦
9.4. 个人管理
- 影响力(Influence: The Psychology of Persuasion) by [美] 罗伯特·西奥迪尼
- 原则(Principles) by Ray Dalio
- 黑天鹅(Black Swan) by Nassim Nicolas Taleb
- 随机生存的智慧: 黑天鹅语录(The Bed of Procrustes) by Nassim Nicholas Taleb
- 反脆弱: 从不确定性中获益(Antifragile: Things That Gain from Disorder) by Nassim Nicholas Taleb
- NNT文字合集 by NNT
- 人性的弱点全集(How to win friends and influence people) by Dale Carnegie
- 人性的优点全集(How to stop worring and start living) by Dale Carnegie
- 万万没想到:用理工科思维理解世界 by 万维刚
- 优秀到不能被忽视(So Good they can not ignore you) by Cal Newport
- 穷查理宝典(Poor Charlie's Almanack) by Charles Munger(查理芒格)
- 职场尤里卡 by 科学家种太阳
- 暗时间(Dark Time) by 刘未鹏
- 囚徒健身(Convict Conditioning) by Paul Wade
- 思考,快与慢(Thinking, Fast and Slow) by Daniel Kahneman
- 小狗钱钱(Money Doggy) by Bodo Schafer
- 亲爱的安德烈 by 龙应台
- 西尔斯育儿经 by 威廉·西尔斯 玛莎·西尔斯
- 博士五年总结 by 田渊栋
- 异类: 不一样的成功启示录(Outliers: The Story of Success) by Malcolm Gladwell
- 眨眼之间: 不假思索的决断力(Blink: The Power of Thinking Without Thinking) by Malcolm Gladwell
- 逆转: 弱者如何找到优势,反败为胜(David and Goliath: Underdogs, Misfits and the Art of Battling Giants) by Malcolm Gladwell
- 大开眼界(What the Dog Saw: And Other Adventures) by Malcolm Gladwell
- 超预测: 预见未来的艺术和科学(Superforecasting: The Art and Science of Prediction) by 泰洛克,加德纳
- 引爆点:如何制造流行(The Tipping Point: How Little Things Can Make a Big Difference) by Malcolm Gladwell
- 为什么:关于因果关系的新科学(The Book of Why : The New Science of Cause and Effect) by Judea Pearl
- Skin in the Game: Hidden Asymmetries in Daily Life(利益攸关) by NNT
- Stealing Fire(盗火) by Steven Kotler and Jamie Wheal
- Plato and the Nerd: The Creative Partnership of Humans and Technology(柏拉图与书呆子) by Edward Ashford Lee
- Trying Not to Try: The Art and Science of Spontaneity(无为) by Edward Slingerland
- Why Buddhism is True: The Science and Philosophy of Meditation and Enlightenment(为什么佛学是真的) by Robert Wright
- Tools of Titans(巨人的工具) by Tim Ferriss
- Intuition Pumps and Other Tools for Thinking(直觉泵和其他思考工具) by 丹尼尔 丹尼特 ( Daniel C. Dennett)
- 硅谷王川电子书第一卷 by 硅谷王川
- 201809 学会示弱 - 职场和做人的道理
- 202006 程序员健康指南(The Healthy Programmer) by Joe Kutner
- 202011 曾国藩的六戒!
- 202102 The Almanack of Naval Ravikant
- 202302 非对称风险(Skin in The Game) by NNT
- 202305 像火箭科学家一样思考(Think Like a Rocket Scientist) by Ozan Varol
- 202307 《手册》中文 - 爱比克泰德
- 202406 孩子的大脑 by 阿尔瓦罗·毕尔巴鄂
- 202409 Portfolio versus resume
- 202410 权利和垄断演化机制 from 硅谷王川公号2022合集
- 202410 做题家和出题家 from 硅谷王川公号2022合集
- 202410 论投资高成长垄断型资产的八个误区 from 硅谷王川公号2021合集
- 202410 幸福来自全面复合增长 from 硅谷王川公号2021合集
- 202410 关于间歇性断食 from 硅谷王川公号2021合集
- 202410 活下来就好及时出场就好 from 硅谷王川公号2020年合集
- 202410 每年阅读500本书 from 硅谷王川公号2020年合集
- 202410 为什么人们不断预言摩尔定律会死掉 from 硅谷王川公号2020年合集
- 202410 出钱最多的视角才是上帝视角 from 硅谷王川公号2020年合集
- 202410 抛弃对这个世界的一厢情愿 from 硅谷王川公号2020年合集
- 202410 创新扩散的理论模型和误区 from 硅谷王川公号2020年合集
- 202410 抽象者劳心 from 硅谷王川公号2018年合集
- 202410 论写作的六大好处和一个坏处 from 硅谷王川公号2018年合集
- 202410 论"目标导向"和"过程导向" from 硅谷王川公号2018年合集
- 202411 怎样激励10到25岁的人(激励年轻人的科学) 《精英日课》解读
- 202411 超预期寿命Outlive 《精英日课》解读
9.5. 软件开发
- Design Reading 软件设计方面的一些文章
- 竞争策略 on Coursera
- 金融市场 on Coursera
- The Architecture of Open Source Applications
- Concurrent Programming for Scalable Web Architectures
- Producing Open Source Software
- 浪潮之巅(On Top of Tides) by 吴军
- 风险投资(Venture Captial) 摘自 <浪潮之巅>
- Design Patterns Elements of Reusable Object-Oriented Software
- 大教堂与市集(The Cathedral and the Bazaar) by Eric Raymond
- 黑客与画家(Hackers and Painters) by Paul Graham
- 编程精粹-Microsoft编写优质无错代码的秘诀(Writing Clean Code)
- Unix程序设计艺术(The Art of Unix Programming) by Eric Raymond
- 人月神话(The Mythical Man-Month) by Fred Brooks
- 梦断代码(Dreaming in Code)
- 重构-改善既有代码的设计(Refactoring: Improving the Design of Existing Code)
- 高质量程序设计艺术(Code Quality The Open Source Perspective)
- 虚拟机设计与实现(Virtual Machine Design and Implementation in C/C++)
- 结构化计算机组成(Strcutured Computer Organization) by A.S.T
- 现代操作系统(Modern Operating Systems) by A.S.T
- 计算机系统概论(Introduction to Computing Systems) by Yale Patt
- 分布式操作系统(Distributed Operating Systems) by A.S.T
- 程序员的思维修炼(Pragmatic Thinking and Learning - Refactor Your Wetware)
- 改变未来的九大算法(Nine Algorithms that Changed the Future) by John. McCormick
- Rework by 37 Signals
- Getting Real by 37 Signals
- 代码的未来 by 松本行弘
- How to be a Programmer
- 我是高频交易工程师
- 观止-微软创建NT和未来的夺命狂奔(Showstopper!: The Breakneck Race to Create Windows NT and the Next Generation at Microsoft)
- 程序员的呐喊(A Programmer's Rantings) by Steve Yegge
- 高效能程序员的修炼:软件开发远不止是写代码那样简单(Effective Programming: More Than Writing Code) by Jeff Atwood
- 编程人生(Coders at Work) by Peter Seibel
- 松本行弘的程序世界 by Matz
- 程序员修炼之道-从小工到专家(The Pragmatic Programmer: From Journeyman to Master) by Andrew Hunt/David Thomas
- 编程珠玑(Programming Pearls) by Jon Bentley
- 编写可读代码的艺术(The Art of Readable Code) by Boswell and Foucher
- Hints for Computer System Design by Bulter Lampson
- Open Life - The Philosophy of Open Source by Henrik Ingo
- 软件随想录(More Joel on Software) by Joel Spolsky, 阮一峰翻译
- 大师访谈录(Making it Big in Software)
- 牛津通识读本-数学
- Street-Fighting Mathematics(街头数学) by Prof. Sanjoy Mahajan
- 代码大全(Code Complete) by Steve McConnell
- 编程大师访谈录 by Susan Lammers
- 202012 我编程,我快乐(The Passionate Programmer) by Chad Fowler
- 202012 程序员的自我修养 by 陈逸鹤
- 202101 代码之美(Beautiful Code) by Grey Wilson
- 202312 From Cloud Computing to Sky Computing by Ion Stocia
9.6. 其他笔记
- 个人介绍(about me)
- 计算机科学主题列表
- CSS for Org-exported HTML 原始文件
- 冷笑话(fun) 和 网络摘录(paste) 和 各种语录(sayings)
- 百度空间存档(baidu space archive)
- 写给离去的亲人(to my dears)
- 可乐和矿泉水(cola and water)
- 诗歌和电影(poetry and movie)
- 远渡重洋(cross ocean)
- 房子(house) 和 车子(car)
- 怀孕准备(preganancy)
- 睡眠训练实战操作经验
- 202306 从摄像想到信息稀释效应
- 回顾2009 - 回顾2010 - 回顾2011 - 回顾2012
- 回顾2013 - 回顾2014 - 回顾2015 - 回顾2016
- 回顾2017 - 回顾2018 - 回顾2019 - 回顾2020
- 回顾2021 - 回顾2022 - 回顾2023 - 回顾2024
10. LeetCode
- LC 493. Reverse Pairs 归并排序
- LC 837. New 21 Game 滑动窗口+动态规划
- LC 1035. Uncrossed Lines 动态规划+数据集优化
- LC 1014. Best Sightseeing Pair 动态规划空间优化(遍历的方向性)
- LC 1109. Corporate Flight Bookings 区间计数
- LC 1307. Verbal Arithmetic Puzzle 剪枝优化
- LC 1074. Number of Submatrices That Sum to Target 子矩阵遍历
- LC 1330. Reverse Subarray To Maximize Array Value 处理绝对值
- LC 950. Reveal Cards In Increasing Order 逆向推导
- LC 1227. Airplane Seat Assignment Probability 飞机座位安排概率问题
- LC 629. K Inverse Pairs Array 动态规划+滑动窗口
- LC 42. Trapping Rain Water 动态规划和堆栈使用
- LC 1201. Ugly Number III 重复计数
- LC 220. Contains Duplicate III Java的平衡树
- LC 910. Smallest Range II 数学变化,贪心算法,+/-K 转换成为 +0/2K
- LC 754. Reach a Number 数学观察
- LC 1073. Adding Two Negabinary Numbers -2进制
- LC 47. Permutations II 全排列和去重
- HR: Organizing Containers of Balls 利用不变量
- LC 898. Bitwise ORs of Subarrays 看似二重循环实则不是
- LC 126. Word Ladder II 字符串归类 和 枚举所有最短路径
- LC 407. Trapping Rain Water II 二维区域收缩
- LC 730. Count Different Palindromic Subsequences 统计去重
- LC 862. Shortest Subarray with Sum at Least K 双指针和数据观察
- LC 858. Mirror Reflection 处理反射路线
- LC 33. Search in Rotated Sorted Array 旋转有序数组的二分查询
- LC 1027. 最长等差数列 看似三重循环的二重循环
- LCP 09. 最小跳跃次数 双向状态的动态规划 和 看似二重循环的单循环
- LC 810. 黑板异或游戏 异或操作和奇偶性
- LC 1897. Meeting Room III 会议室问题,最多需要几个会议室?
- LC 630. Course Schedule III 课程安排问题,最多上基本课?
- LC 1139. the kth subarray 遍历+二分搜索 可以转换成为 双指针遍历
- LC 805. Split Array With Same Average 使用bits的动态规划
- LC 218. The Skyline Problem 经典的"天空线"题目
- LC 664. Strange Printer 奇怪的状态转移方程
- LC 149. Max Points on a Line
- LC 1453. Maximum Number of Darts Inside of a Circular Dartboard 半径为r的圆最多可以围住多少个点
- LC 1371. Find the Longest Substring Containing Vowels in Even Counts 偶数个字符的最大串
- LC 517. Super Washing Machines 奇怪的贪心算法 + 直觉的重要性
- LCP 13. 寻宝 状态压缩DP和全排列之间的关系
- LC 943. Find the Shortest Superstring 状态压缩DP和全排列之间的关系
- LCP 14. 切分数组 因数分解和另外一种状态方程
- CF 1359C. Mixing Water 基本的数学推导
- CF 1359D. Yet Another Yet Another Task 寻找替代值,最大子序列之和扩展
- LC 899. 有序队列 数学变换/满足某种条件的操作可以推导出任意操作
- LC 1388. 3n 块披萨 数学变换/最终限制仅仅是不能取相邻的
- LC 986. Interval List Intersections 重叠区间的简单解法
- LC 1483. 树节点的第 K 个祖先 LCA倍增法
- LC 932. Beautiful Array 自底向上的分治方法
- LC 1025. Divisor Game DP和数学
- LC 1494. Parallel Courses II Combination的一种写法
- LC 1498. Number of Subsequences That Satisfy the Given Sum Condition 统计子序列问题也可排序
- LC 1515. Best Position for a Service Centre 凸函数优化和爬山法的框架
- LC 1505. 最多 K 次交换相邻数位后得到的最小整数 动态求解前缀和+Fenwick树的使用
- LC 1504. 统计全 1 子矩形 子矩阵的通用算法
- LC 1526. 形成目标数组的子数组最少增加次数 简化区间操作代价和差分数组的应用
- LC 1521. 找到最接近目标值的函数值 快速重建区间元素AND的结果
- LC 1520. 最多的不重叠子字符串 区间扩展 + 贪心算法选择最优区间
- LC 1562. 查找大小为 M 的最新分组 是否应该维护两个Find/Union数据结构??
- LC 1595. 连通两组点的最小成本 两个状态变量的动态规划
- LC 1605. 给定行和列的和求可行矩阵
- LC 1585. 检查字符串是否可以通过排序子字符串得到另一个字符串
- LC 1626. 无矛盾的最佳球队 从计算顺序性到动态规划
- LC 1627. 带阈值的图连通性 多重连通性和Find/Union
- LC 1621. 大小为 K 的不重叠线段的数目
- LC 1622. 奇妙序列 支持计算组合的日志
- LC 1655. 分配重复整数 装箱问题和动态规划
- LC 1659. 最大化网格幸福感 动态规划,轮廓压缩
- LC 1665. 完成所有任务的最少初始能量 贪心算法的证明
- LC 1675. 数组的最小偏移量 双向搜索变为单向搜索
- LC 1703. 得到连续 K 个 1 的最少相邻交换次数 数学证明 + 滑动窗口
- LC 1734. 解码异或后的排列 特殊的异或操作
- LC 1735. 生成乘积数组的方案数 整数分解的组合数量
- LC 1727. 重新排列后的最大子矩阵
- LC 5716. 好因子的最大数目 max(x*y*z…) st. x+y+z+.. <= n (PS:这题编号有点大)
- LC 5725. 序列中不同最大公约数的数目 因数分解
- LC 1835. 所有数对按位与结果的异或和
- LC 1840. 最高建筑高度 双向遍历约束
- LC 1847. 最近的房间 从线段树到事件处理(1)
- LC 1851. 包含每个查询的最小区间 从线段树到事件处理(2)
- LC 5752. 子数组最小乘积的最大值 类似find-union的查找
- LC 1862. 向下取整数对和 floor/ceil这类函数的另外处理角度
- LC 1866. 恰有 K 根木棍可以看到的排列数目 动态规划(讲究计算顺序)
- LC 1872. 石子游戏 VIII 动态规划(讲究计算顺序)
- LC 1878. 矩阵中最大的三个菱形和 拆分组合
- LC 1882. 使用服务器处理任务 模拟服务器处理
- LC 1915. 最美子字符串的数目
- LC 1916. 统计为蚁群构筑房间的不同顺序 树结构不同的访问顺序数量
- LC 1938. 查询最大基因差 Trie的增删查
- LC 5220. 两个回文子字符串长度的最大乘积
- LC 1982. 从子集的和还原数组 划分两个等差数组
- LC 1977. 划分数字的方案数 两个DP
- LC 1994. 好子集的数目
- LC 1997. 访问完所有房间的第一天
- LC 1998. 数组的最大公因数排序
- LC 2029. 石子游戏 IX 状态化简和模拟
- 建信04. 电学实验课 正确的矩阵相乘用法
- LC 5932. 合法重新排列数对 创建欧拉回路
- LC 5970. 参加会议的最多员工数 环路和拓扑排序
- LC 2134. 最少交换次数来组合所有的 1 II 滑动窗口
- LC 2132. 用邮票贴满网格图 矩形覆盖查询
- LC 2136. 全部开花的最早一天 贪心算法
- LC 2141. 同时运行 N 台电脑的最长时间 强大的可视化
- LC 2157. 字符串分组 代表性状态 "*bc"
- LC 2188. 完成比赛的最少时间
- LC 6040. 花园的最大总美丽值 最优均分方案
- LC 6103. 从树中删除边的最小分数 枚举删除边
- LC 6118. 最小差值平方和 快速平摊(heap迭代次数过多)
- LC 6119. 元素值大于变化阈值的子数组 该元素作为最小/最大值可以覆盖的区域
- LC 6115. 统计理想数组的数目 组合数学和DP
- LC 6144. 将数组排序的最少替换次数 将x拆分成为有序数列并且保证最大值不超过y
- LC 6151. 统计特殊整数
- LC 6155. 找出数组的第 K 大和 第K小的子序列之和
- 202210 LeetCode 数字经济算法编程大赛 2022
- LCP 65. 舒适的湿度 超大bits / 最大差值的动态规划
- LC 6211. 创建价值相同的连通块 树的DFS遍历
- LC 6223. 移除子树后的二叉树高度 树遍历时候更新状态
- LCP 69. Hello LeetCode! 双重DP / 二进制状态表示 / DFS不一定比记忆搜索慢
- LC 6260. 矩阵查询可获得的最大分数 Dijkstra + Marzullo
- LC 2513. 最小化两个数组中的最大值
- LC 2518. 好分区的数目
- LC 2527. 查询数组 Xor 美丽值
- LC 2528. 最大化城市的最小供电站数目
- LC 6305. 二进制矩阵中翻转最多一次使路径不连通 两次图遍历确保线路上没有交叉节点
- LC 2568. 最小无法得到的或值 推理
- LC 2571. 将整数减少到零需要的最少操作数 贪心或者是递归搜索
- LC 2573. 找出对应 LCP 矩阵的字符串 推理+验证
- LC 2576. 求出最多标记下标 非典型的二分
- LC 6318. 完成所有任务的最少时间 难道这类区间贪心问题都是从右端排序?
- LC 2572. 无平方子集计数 状态DP的另外一种归纳方法
- LC 2584. 分割数组使乘积互质
- LC 2577. 在网格图中访问一个格子的最少时间 图回路的奇偶性
- LC 2581. 统计可能的树根数目 换根DP. 没有想到过还有这么用的
- LC 2569. 更新数组后处理求和查询 延迟线段树/超大数的bit count
- LC 2603. 收集树中金币 无向图的拓扑排序
- LC 2608. 图中的最短环 删边进行BFS
- LC 2612. 最少翻转操作数 奇偶性和BFS
- LC 6344. 字典序最小的美丽字符串 回文特性
- 202305 LC 2699. 修改图中的边权 两遍dijkstra
- 202306 LC 2719. 统计整数数目 数位 dp
- 202307 LC 6919. 使数组中的所有元素都等于零 差分数组
- 202308 LC 6957. 统计范围内的步进数字数目 数位dp
- 202808 LC 2791. 树中可以形成回文的路径数 树状图通常都是DFS
- 202308 LC 2790. 长度递增组的最大数目 挪位贪心
- 202308 LC 2813. 子序列最大优雅度 反悔贪心(贪心是可以撤销的),多目标优化
- 202308 LC 2809. 使数组和小于等于 x 的最少时间 排序不等式+DP
- 202308 LC 8013. 范围中美丽整数的数目 数位DP
- 202309 LC 2846. 边权重均等查询 Tarjan LCA + 树拆分
- 202309 LC 2836. 在传球游戏中最大化函数值 倍增算法 / 前向DFS
- 202309 LC 8020. 字符串转换 KMP + 矩阵求幂
- 202309 LC 2867. 统计树中的合法路径数目 简单的树遍历
- 202309 LC 2866. 美丽塔 II 寻找最近的不大于自己的点(二叉树是不行的)
- 202310 LC 8026. 构造乘积矩阵 前后缀算法和模逆元算法
- 202310 LC 2902. 和带限制的子多重集合的数目 多重背包:滚动数组和前缀和优化
- 202311 LC 2916. 子数组不同元素数目的平方和 II 数学+线段树(终于会写线段树了)
- 202311 LC 100112. 平衡子序列的最大和 (离散化 + 线段树)
- 202311 LC 100124. 找出强数对的最大异或值 II 区间更新+线段树
- 202311 LC 2939. 最大异或乘积
- 202311 LC 2945. 找到最大非递减数组的长度 数学推导单调性
- 202312 LC 2954. 统计感冒序列的数目 排列组合 + 乘法逆元
- 202312 LC 2953. 统计完全子字符串 枚举可能 + 滑动窗口(本周赛太难)
- 202312 LC 2952. 需要添加的硬币的最小数量 数学归纳(本周赛太难)
- 202312 LC 100136. 统计好分割方案的数目
- 202312 LC 2968. 执行操作使频率分数最大
- 202312 LC 2967. 使数组成为等数数组的最小代价
- 202312 LC 2977. 转换字符串的最小成本 II
- 202312 LC 2972. 统计移除递增子数组的数目 II
- 202401 LC 2983. 回文串重新排列查询 两个区间内字符串调整
- 202401 LC 3012. 通过操作使数组长度最小 数学推理
- 202401 LC 3022. 给定操作次数内使剩余元素的或值最小
- 202402 LC 3031. 将单词恢复初始状态所需的最短时间 II 分组KMP
- 202403 LC 100241. 求出所有子序列的能量和未命名
- 202403 LC 100249. 替换字符串中的问号使分数最小
- 202404 LC 100240. 最小化曼哈顿距离 集合中两点的最大曼哈顿距离
- 202404 LC 3108. 带权图里旅途的最小代价
- 202404 LC 100259. 划分数组得到最小的值之和 And值可以考虑作为dp状态
- 202404 LC 100267. 单面值组合的第 K 小金额 组合数学中的计数问题
- 202404 LC 100293. 找出所有稳定的二进制数组 II 二维前缀和不好维护 / 基于代码结构做优化
- 202405 LC 100312. 找出分数最低的排列 TSP问题可以用动态规划求解
- 202405 LC 100306. 不包含相邻元素的子序列的最大和 线段树
- 202405 LC 100321. 优质数对的总数 II 调和级数分析
- 202405 LC 100314. 物块放置查询 线段树+辅助二叉树
- 202406 LC 100320. 执行操作可获得的最大总奖励 II python内置biset
- 202406 LC 100327. 求出最长好子序列 II
- 202406 LC 100333. 统计逆序对的数目 抽象地思考排列顺序
- 202406 LC 100318. 合并两棵树后的最小直径
- 202407 LC 3235. 判断矩形的两个角落是否可达 使用圆来覆盖矩形
- 202407 LC 3234. 统计 1 显著的字符串的数量 O(n * sqrt(n))的算法
- 202408 LC 3257. 放三个车的价值之和最大 II 3个点的枚举方法
- 202408 LC 3261. 统计满足 K 约束的子字符串数量 II
- 202409 LC 3277. 查询子数组最大异或值 多轮前缀和
- 202409 LC 3276. 选择矩阵中单元格的最大得分 特定搜索顺序的dp
- 202409 LC 3273. 对 Bob 造成的最少伤害 启发式得到贪心排序特征
- 202409 LC 3272. 统计好整数的数目 抽取特征+组合计数
- 202409 LC 3292. 形成目标字符串需要的最少字符串数 II AC自动机+DP
- 202410 LC 3317. 安排活动的方案数 `F(n,k)` 将n个人分配到k个项目中且确保每个项目至少有一个1的计数
- 202410 LC 3337. 字符串转换后的长度 II 矩阵求幂
- 202410 LC 3336. 最大公约数相等的子序列数量
- 202411 LC 3347. 执行操作后元素的最高频率 II 准确挑选特征值
- 202411 LC 3348. 最小可整除数位乘积 II 因子分解和预填充
- 202411 LC 3357. 最小化相邻元素的最大差值 区间覆盖贪心算法
- 202411 LC 3362. 零数组变换 III
- 202411 LC 3367. 移除边之后的权重最大和