
c/c++知识点面试题
文章平均质量分 87
youngyoungla
alway be young
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数组中出现次数超过一半的数字
1、利用快速排序,排好序中间的值就是出现次数超过一半的数字 注意:判断数组是否有效,判断出现次数频率是否超过数组大小的一半 #include #include #include #include using namespace std; int PartSort(int* a, int left, int right) //快排排序 { assert(a); int key = a原创 2016-07-29 15:11:29 · 795 阅读 · 0 评论 -
排序总结
时间复杂度:就是指函数计算执行的操作次数。 二分查找法的时间复杂度:O(logn/2)=O(lgn) 递归的时间复杂度:递归的总次数*每次递归次数 空间复杂度:对象的个数 递归的时间复杂度:递归深度O(N) 一、快速排序 (1)最好的情况:取决于key值的大小,如果每次划分后对一个元素定位,该元素的左侧子序列与右侧子序列的长度相同,则下一步就是对两个长度减半的子序列进行排序。 时间复原创 2016-08-28 13:23:09 · 477 阅读 · 0 评论 -
面试题
1、c++中有哪几种数据类型? (1)数据类型可以告诉数据代表的意义,以及程序可以对数据进行哪些操作。 (2)c++中有自定义类型和基本类型; 基本数据类型:整型,浮点型,void型 自定义类型:用户自己创建的类型,数组,结构体,类 2、整型有哪几种形式?区别? 一字节表示八位,即:1byte = 8 bit; (1)字符型 unsigned char 无符号字符型 1个字原创 2016-07-28 18:48:51 · 739 阅读 · 0 评论 -
const和#define区别
(1)编译器处理方式不同:#define 宏在预处理阶段展开,const 常量在编译阶段展开。 (2)类型和安全检查不同: #define宏没有类型,不做任何类型检查,仅仅是展开; const 常量具有具体的类型,在编译阶段会执行类型检查。 (3)存储方式不同: #define宏仅仅是展开,有多少地方使用,就展开多少次,不会分配内存; const常量会在内存中分配(可以是堆中或者栈中原创 2016-09-16 12:29:16 · 248 阅读 · 0 评论 -
多态
一、概念 多态性可以简单的概括为“1个接口,多种方法”,在程序运行的过程中才决定调用的机制 程序实现上是这样,通过父类指针调用子类的函数,可以让父类指针有多种形态。 二、形式 静态多态(函数重载)模板函数 在编译时就可以确定对象使用的形式 动态多态(虚函数,函数重写)其具体引用的对象在运行时才能确定 三、函数重载实现的多态 函数重载:函数名相同,参数不同 #include原创 2016-09-16 15:32:25 · 282 阅读 · 0 评论 -
static_cast、dynamic_cast、const_cast和reinterpret_cast总结
c++类型转换: (1)显示类型转换 (2)隐式类型转换 而对于隐式变换,就是标准的转换,在很多时候,不经意间就发生了,比如int类型和float类型相加时,int类型就会被隐式的转换位float类型,然后再进行相加运算。 接下来主要介绍显示类型转换。 一、static_cast static_cast的转换格式:static_cast (expression)原创 2016-09-16 19:48:20 · 463 阅读 · 0 评论