Vim的哲学 本文记录了我在现阶段对Vim的一些思考。 我用过的开发工具 回想起来,我大概是在大一的寒假快要结束的时候接触了编程语言,我还记得自己按照教程,用gcc编译并输出了HelloWorld。当时,我
笔试总结:携程2018实习生(安卓开发工程师) 时间:2017-4-11,19:00~21:00。 选择题 10个数学智力题,10个Android题。数学智力题花了半个钟头,感觉还是有几题没把握,结果没想到
Build Your Own Lisp中的闲言碎语 Build Your Own Lisp中的一些摘录。 前不久,读完了Build Your Own Lisp。作者用C语言写了一个简单的Lisp解释器,代码之精妙、设计之优雅确实让我受益匪浅! 不过,除了跟着作者写代码,
关于C/C++中指针自增运算符的思考 本文记录了C/C++中指针自增运算的一些微妙特性。 问题引入 C代码: #include <stdio.h> int main(int argc, char const* argv[]) { int a = 1, *p = &a; ++++p; ++p++; return 0; } C++代码: #include <bits/stdc++.h> int main(int argc, char const* argv[]) { int a = 1, *p = &a; ++++p; ++p++; return 0; } 编
踩坑记:LinuxMint18字体变为楷体的修复 本文记录了一次修复系统字体的经历。 起因 起因很奇怪,本来打算今天把动态规划算法好好研究一番,结果一大早起来发现中文输入法消失了!因为之前有次发生这种情况是
时间复杂度计算类题目两则 本文记录了两则具有代表性的算法复杂度计算题目。 题目1 分析以下代码的时间复杂度: for (int i = 0; i < n; i++) { for (int j = 0; j < i; j++) { for (int k = 0; k < j; k++) { // operations } } } 注:以上代码只作示意,未详细
踩坑记:从C++变量到Java引用 本文介绍了Java和C++中变量名(对象类型)的细微差别。 问题引入 问题的产生自另一个题目: 请实现一种数据结构SetOfStacks,由多个栈组成,其中每个栈的大小为s
外排序 初探如何对大规模数据进行排序。 问题 问题描述很简单,如何对大规模数据进行排序,比如说一个30G的文件。 分析 解决这个问题主要要解决两件事。第一件就是大文件显然无法一次读入内存,所以只能一次读入一部分
‘C语言中不带{}的代码块’ 本文讨论了C99中的一个新特性:不带{}的代码块。以及阅读编程语言教程的一种新思路。 问题 在阅读C Primer Plus325页时遇到以下一句话: 先前曾提到C99
C语言宏展开的顺序问题 本文记录了作者遇到的一个关于C语言宏展开顺序的问题及其解释。 问题 这是我在阅读The C Puzzle Book一书中遇到的一个问题,为了简化问题,我写了以下一段代码 #include <stdio.h> #define TEST(x) x*5 #define PR(x) printf(#x " = %d", x) #define PRINT1(x) PR(x);printf("\n")