汉诺塔,队列和双向队列。 1.汉诺塔 确定最后一步:A->C, 把上面的所有盘子,想办法从A移动到B。拆解成n-1个盘子,移动到B;把最大的盘子移动到C,然后把n-1个盘子,...
38. 递归和栈。 1.循环和递归。 1.1 求n! 9!=987...*11.2 求1+2+3+...+n 可以for循环实现,也可以递归实现。 递归: 1.一定有递归结...
NDK37.归并排序、快速排序。 1.稳定排序和不稳定排序。 稳定排序:排序后,值相同的元素,依旧保持原有的顺序。eg: 冒泡排序、插入排序、选择。不稳定排序:排序后,值相同...
选择排序:每次从待选数据中选出最小的,与未排序序列首元素交换。 它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数...
NDK-030: C++11: STL算法设计理念分析 1.预定义函数对象 c/c++ 提供了很多定义好的函数。plus,less/greater,find_if, equa...
29.C++进阶 - STL函数对象和谓词 C++文档 http://en.cppreference.com/w/c[http://en.cppreference.com...
28.C++进阶 - STL 集合容器的基本介绍和使用 类似java的集合, 1.vector容器, 底层是数组,动态数组,会自动扩展。 java的vector,底层封装了一...
27.C++进阶1 - Const关键字增强和引用的本质剖析 1.string字符串常见操作。 2. c/c++ 编译器,编译链接运行的概念。 有些代码在不同的环境下,可能结...
26.异常处理、字符串处理 1.c++ 类型转换 1.1 static_cast<T> 静态转化,用于基本类型之间的转化。如int转char。 1.2 const_cast ...
实现Native层的ArrayList c/C++ 翻转单链表. 判断一棵树是不是平衡二叉树。 音视频开发。 1.编译流程 模板函数:打算生成 3 个方法 , 发现有一个 i...
C语言常用库函数。 %#x 所以c语言中的%#x意思是带格式0x的16进制输出。 memset 初始化函数,将某一刻内存中的全部设置为指定的值。void* memset(vo...
24.虚继承、虚函数、函数模板 1.属性初始化 对象嵌套时,相当于调用了Course对象的构造函数。private: Cource course;Student(char*n...
22:C++03:C++基础 - 对象大小和友元类 1.方法的 可变参数... 2.static关键字,类(跟 java 类似) static静态属性,在C++中,必须要初始...
21:C++02:C++基础 - 构造函数、析构函数和拷贝构造函数 1.构造函数 2.析构函数:以‘~’波浪线符号开头。 析构函数只能有一个,且不能有任何输入参数。构造函数可...
20:C++01:引用和重载 1. C 和 C++的区别 C++里面可以写C的代码,可以混编C。但是C里面,不能混编C++的代码。 C++ 面向对象(Java类似),c 面向...
结构体中的高级话题 1.结构体赋值操作 2.结构体套指针 结构体套指针,必须要对结构体指针进行初始化(赋值);指针可以指向任何地址,但是他的大小永远是4字节。 3.深拷贝和浅...
二级指针和多级指针 1.指针使用的注意事项 1.1 在运算的过程中,不断地改变指针的位置, 1.2 给一个字符串赋值 强调一个概念:指针变量与 指针 所指向的内存变量 是两个...
C进阶2- 项目开发模型强化 1. 内存四驱模型 2.指针间接赋值的意义: 1.其实就是为了在其他方法中去间接赋值, 通过指针间接赋值很常见;2.c 可以传对象的地址在方法里...
C进阶1- 内存四驱模型 1. 数组参数传递 指针也是一种数据类型,为什么指针要有类型,虽说都只占用四个字节,但是有数据类型。问题:数组作为参数传递的时候为什么获取不到长度?...