摘要:
前言 本文介绍下X宏的使用 首先简单介绍下宏的几种用法 #define STRCAT(X,Y) X##Y #define _STR(X) #@X #define STR(X) #X #define Log(...) {printf(__VA_ARGS__);} /* * x##y 拼接xy * #@ 阅读全文
摘要:
PreOrder recursive package main import "fmt" type TreeNode struct { val int Left *TreeNode Right *TreeNode } func preorderTraversal(root *TreeNode) { 阅读全文
摘要:
核心数据结构 string 内部sds,动态扩容。小于1M加倍扩,大于1M每次扩容1M。最大长度512M。 常用命令: SET name value GET name SETNX name value EXISTS name DEL name # 批量 MGET name1 name2 name3 阅读全文
摘要:
[TOC] gcc "详见" gdb "详见" vim 知道创宇技能表推荐的一篇文章比较好,酷壳的 "简明 VIM 练级攻略" 摘录一些比较常见的: w: 到下一个单词的开头 e: 到下一个单词的结尾 % : 匹配括号移动,包括 (, {, [. \ 和 :匹配光标当前所在的单词,移动光标到下一个( 阅读全文
摘要:
[TOC] 记录下力扣上的 "剑指" 题。目前是第一遍,看了题解的前面标 "面试题06 从尾到头打印链表" 解法一:利用stack的LIFO性质。时间31.14% 空间100.00% 解法二:递归 时间66.86%,空间100% "面试题07 重建二叉树" 解法一:递归.效率很低,时间5%需要优化 阅读全文
摘要:
旧 API:位于 java.util 包中,里面主要有 Date、Calendar、TimeZone 类 新 API:位于 java.time 包中,里面主要有 LocalDateTime、ZonedDateTime、ZoneId 类 [TOC] Date 年从1900开始算;月分从0开始算,所以需 阅读全文
摘要:
[TOC] C文件操作 文件开关 文件读写 单字符 单行 文件随机读写 C++文件操作 c++三种IO:iostream,fstream,sstream Linux文件操作 打开 flags: O_RDONLY O_WRONLY O_RDWR mode:创建文件时使用 阅读全文
摘要:
基础算法 选择 void selection(vector<int>& vec) { if(vec.size() <= 1) return; for(int i = 0; i<vec.size() - 1; ++i) { int minidx = i; for(int j = i + 1; j < 阅读全文
摘要:
源码阅读基于Redis5.0.9 C字符串缺点 redis 127.0.0.1:6379> SET dbname redis OK redis 127.0.0.1:6379> GET dbname "redis" 从上面的例子可以看到,key为dbname的值是一个字符串“redis” Redis源 阅读全文
摘要:
工作2年,干了一年ARM平台嵌入式,一年后台,总结下这两年开发中调试的经验。我把调试手段分成2种:打印日志和用工具分析。因为平时主要开发在Linux平台,就以GDB为例 一、打印日志 1. 合理设置日志级别 一般的日志库都会有日志级别,合理使用能避免因线上环境的日志打印过大而导致的磁盘占用过高,搜索 阅读全文