
C++
vivian_ll
这个作者很懒,什么都没留下…
展开
-
C++ 变量
最近看书做题,顺便复习一下c++,把涉及到的知识点记录如下。一、变量的定义变量其实只不过是程序可操作的存储区的名称。C++ 中每个变量都有指定的类型,类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上。变量的名称可以由字母、数字和下划线字符组成。它必须以字母或下划线开头。大写字母和小写字母是不同的,因为 C++ 是大小写敏感的。变量定义就是告诉编译...原创 2018-09-10 21:25:30 · 365 阅读 · 0 评论 -
C++ 类型转换
例1:int main() { unsigned int a = 0x123456f7; unsigned char i = (unsigned char)a; char *b = (char*)&a; printf("%08x,%08x\n", i, *b); system("pause");} 程序结果输出为:000000f...原创 2018-09-14 18:01:16 · 676 阅读 · 0 评论 -
C++ 指针
例1:void main(){ int i = 2; printf("%d,%d,%d,%d,\n", i++, ++i, i, i++); //printf("%d %d %d\n", ++i,i,i++); // 4 4 2 system("pause");}原创 2018-09-14 20:14:07 · 194 阅读 · 0 评论 -
用c++实现一个n*n矩阵,矩阵沿着45度递增,形成zigzag数组
程序员面试宝典上的一道题:输入n,求一个nXn矩阵,规定矩阵沿45度递增,形成一个zigzag数组(JPEG编码里取像素数据的排列顺序),请问如何用C++实现?(中国台湾著名硬件公司2007年11月面试题)(自程序员面试宝典第五版95页)觉得这道题比较经典,难度适中,因此记录下来。zigzag数组形状如下:/*打印zigzag数组 1 5 6 14 15 27 ...原创 2018-10-17 16:40:41 · 1818 阅读 · 0 评论 -
用C++实现两个元素相同但顺序不同的等长数组的正确匹配
《程序员面试宝典》第五版第96页题目如下:有两等长数组A,B,所含元素相同,但顺序不同,只能取得A数组某值和B数组某值进行比较,比较结果为大于,小于,等于,但是不能取得同一数组A或者B中两个数进行比较,也不能取得某数组中的某个值。写一个算法实现正确匹配(即A数组中某值与B数组中某值等值)。最简单的方法:循环加判断,复杂度O(n^2)代码如下:#include <iostream...原创 2018-10-17 17:36:10 · 1684 阅读 · 1 评论 -
C++ 单链表
链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer),简单来说链表并不像数组那样将数组存储在一个连续的内存地址空间里,它们可以不是连续的因为他们每个节点保存着下一个节点的引用(地址),所以较之数组来说这是一个优势。...原创 2018-10-22 21:07:05 · 1908 阅读 · 1 评论 -
C++ 双链表
一、什么是双链表双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。二、双链表的基本操作创建、遍历、测长、插入、删除#include <iostream>#include <stdio.h>using name...原创 2018-10-23 11:16:43 · 471 阅读 · 0 评论