摘要:
1、常见数据结构线性:数组,链表,队列,堆栈,块状数组(数组+链表),hash表,双端队列,位图(bitmap)树:堆(大顶堆、小顶堆),trie树(字母树or字典树),后缀树,后缀树组,二叉排序/查找树,B+/B-,AVL树,Treap,红黑树,splay树,线段树,树状数组图:图其它:并查集2、... 阅读全文
摘要:
三个要素 : 封装, 继承,多态面向对象设计不外乎遵循五大原则:第一、单一职责原则 即 一个类应该只负责单一的职责,而将其余的职责让其他类来承担,这样每个类之间相互协调来完成一件任务。第二、开闭原则 即对扩展是开放的,对修改是封闭的,因此需要注重抽象的运用第三、替换原则 子类应该可以替换在父类出现的... 阅读全文
摘要:
平均复杂度 O(nlogk) 的基于快排的方法#include #include #include #include #include #define BUG cout = x) r--; while(l = r) break; swap(a[r], a[... 阅读全文
摘要:
#include #include #include #include #include #define BUG cout 0) { const int* pNextPush = pPush; const int* pNextPop = pPop; sta... 阅读全文
摘要:
#include #include #include #include #include #define BUG cout class CQueue { public : CQueue(void); ~CQueue(void); void appen... 阅读全文
摘要:
#include #include #include #include #include // 支持下标访问#include using namespace std;template class StackWithMin {public : StackWithMin() {} virt... 阅读全文
摘要:
C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。一、Const作用 载自 :ht... 阅读全文
摘要:
题目:输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。分析:这是一道很好的考查对递归理解的编程题,因此在过去一年中频繁出现在各大公司的面试、笔试题中。我们以三个字符abc为例来分析一下... 阅读全文