wangdiqi Blog

没有尽头,何来终点。

算法

常用算法

导论 10个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie树 10个算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回朔算法、动态规划、字符串匹配算法 复杂度分析 大 O 复杂度表示法 所有代码的执行时间T(n)与每行代码的执行次数n成正比 T(n) = O(f(n)) n表示数据规模的大小 f(n)表示每行代码执行的次数总和 O表示代码的执...

Argument-dependent lookup(ADL, or Koenig lookup)

C++

定义 Argument-dependent lookup(ADL, or Koenig lookup) 说明 Koenig lookup 主要是编译器帮助我们在相关的命名空间内寻找依赖并且符合的API 例子 最简单的例子 namespace A { void f(int){}; } namespace B { void f(int){}; void test() ...

TCP/IP详解

摘要

“基本概念” 概述 链路层 以太网每一帧最小长度是60字节,不足需要填充。 网络层 ARP——地址解析协议 28字节ARP数据+14字节以太网帧头 RARP——逆地址解析协议 28字节ARP数据+14字节以太网帧头 ICMP——Internet控制报文协议 TCP 客户 ...

Linux 学习

Linux 学习

“Let’s go” 进程 进程同步 管道 FIFO XSI IPC—(消息队列,信号量,共享内存) 消息队列 信号量 共享内存 POSIX信号量 管道 半双工,父子进程使用 若写入的字节数小于等于PIPE_BUF,可保证是原子的 XSI IPC 缺点1. IPC结构是在系统范围内起作用的,没有引用计数。它们会一直留在系统中直到发生下...

C++

C++

“Let’s go”

C++

C++

“Let’s go” 预处理器调试有用的常量 NDEBUG FILE 文件名 LINE 当前行号 TIME 文件被编译的时间 DATE 文件被编译的日期 assert(expr) //只要NDEBUG未定义,assert宏就执行 操作符重载 对称的操作符,如算术操作符、相等操作符、关系操作符和位操作符,最好定义为普通非成员函数 模板编译模型 标准C++为编译模板代码定义了两...

mysql 学习

mysql 学习

“Let’s go” MySQL体系结构 连接池组件 管理服务和工具组件 SQL接口组件 查询分析器组件 优化器组件 缓冲(Cache)组件 插件式存储引擎 物理文件 InnoDB体系结构 后台线程 InnoDB存储和引擎内存池 文件 后台线程 Master Thread 主循环(loop) 后台循环(backgroud loop) 刷新循环(flush...

Lua 学习

Lua 学习

“Let’s go” 头文件 lua.h:定义了Lua提供的基础函数,都有一个lua_前缀 lauxlib.h:定义了辅助库(auxlib)提供的函数。都有一个luaL_打头。辅助库利用lua.h中提供的基础函数提供了更高层次上 的抽象;所有Lua标准库都使用了auxlib lualib.h:为了保持Lua的苗条,所有的标准库以单独的包提供,所以如果你不需要...

Gradle

Gradle

##

Assembly

Assembly

Intel用术语“字(word)”表示16位数据类型。称32位数为“双字” C声明 Intel数据类型 汇编代码后缀 大小(字节) char 字节 b 1 short 字 w ...