- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 【lintcode】用最高效的方式将数组中的0移动到数组的左边
要求将给定的数组进行归并,将数组中的0整合的数组的一侧,要求最高效。方式一、用两个标志位high和low,用队尾同时开始扫描查找0,low标识位遍历完整个数组,high查找记录数组中不为0的数值个数。这样遍历之后,数组不为零数值顺序并没有发生改变。#include #include void move(int *a, int len){ int high=len-1, low=
2015-07-29 15:24:52 797
原创 二维数组初始化问题
1, 最简单的初始化方式 :static a[100][100]; //全局或静态或类数据成员都不需要{0},编译器默认初始化为0对于局部变量, 加{0}, a[100][100] = {0};注意: a[][100] = {0}; //有一些编译器只是将第一行数值置为零2, 运用memset, 这种方法比较花费时间int a[2][3];memset(a, 0
2015-07-28 16:19:10 1334
原创 操作系统内存管理概述
内存管理要达到以下目的:地址保护,一个程序不能访问另一个程序地址空间地址独立:程序发出的地址【虚拟空间(程序空间)的虚拟地址(程序地址)】应与物理主存地址无关。虚拟内存可以解决在不太增加成本的情况下扩大内存容量的目的。虚拟内存的中心思想是 将物理内存扩大到便宜、大容量的磁盘上,即将磁盘空间看作是主存空间的一部分。用户程序即可以完全存放在主存,也可以完全存放在磁盘,当然也可以部分存放在主
2015-07-09 14:42:00 839
原创 《程序员面试宝典》指针问题
程序员面试宝典一书第7章,面试例题九,题目是问程序运行到哪一行会崩溃。编写程序如下#include #include struct S{ int i; int *p; };int main(void){ struct S s; int *p = &s.i; p[0] = 1; p[1] = 5; prin
2015-07-07 21:27:56 406
原创 指针与数组的关系【指针型指针,指针型数组,数组型指针,数组型数组的区别】
结论:(1)一个指针型指针指向一个指针型地址 (int **pp)(2)一个数组型指针指向一个数组型地址 (int (*ap)[5])(3)指针型数组变量就是一个指针型地址 (int *pa [5])(4)数组型数组变量就是一个数组型地址 (int aa[3][2])因为我们知道XX型数组就是代表一个XX型的地址,而指针就是代表某种数据类型的地址,
2015-07-07 17:22:48 656
原创 C语言sizeof求结构体大小问题汇总
可以说一直被各类结构体大小问题说困扰,花了大半天时间查了一下资料,现在整理汇总一下。sizeof:C语言中判断数据类型或者表达式长度符;不是一个函数,字节数的计算在程序编译时进行,而不是在程序执行的过程中才计算出来。基本数据类型的大小很好计算,我们主要看一下构造数据类型的大小,包括数组,结构体和共用体。
2015-07-05 21:13:23 11889 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人