- 博客(28)
- 收藏
- 关注
原创 函数传递的时候参数传递和栈帧结构
调用函数的时候首先进行参数压栈,一般情况下压栈顺序为从右到左,最有压函数的地址;在windows平台下,栈都是从下到上生长的
2014-03-22 23:50:29
1029
转载 队列的入列和出列
#include using namespace std; typedef struct student { int data; student *next; }node; typedef struct linkqueue { node* first,*rear; }queue1; //队列的入队 queue *insert(queue1 *HQ,int x) {
2014-03-21 23:08:00
4356
转载 用循环列表解决一个约瑟夫问题
#include using namespace std; typedef struct LNode { int data; LNode* link; }LNode,*LinkList; //n为总人数,k为第一个报数的人,m为出列者喊道的数 void JOSEPHUS(int n,int k,int m) { //p为当前节点,r为辅助节点,指向p的前驱结点,list为头结点
2014-03-21 19:07:50
683
原创 双链表的建立
#include using namespace std; struct Node { int data; Node * pre; Node* Next; } Node *Creat() { Node * head; head->pre = NULL; head->data = NULL; Node* p = head; Node* q = head; Node* s
2014-03-21 17:30:46
505
原创 遍历一次求单链表中间节点
Node* FindMid(Node* head) { if(NULL == head||NULL = head->next) return head; Node *p = head->next;; Node *q = p; while(NULL != p) { p = p->next->next; q = q->next; } return q; }
2014-03-21 17:07:32
701
原创 删除单链表第一个元素
Node* Dele(Node* head) { if(NULL == head) return head; Node* p = head; Node* q = p->next; if(NULL == q) return head; p->next = q->next; free(q); return head; }
2014-03-21 07:58:12
2806
原创 单链表逆置
node* reverse(node *head) { if(NULL == head || NULL == head->next)//不要忘记了判断为空的情况 return head; Node* q = head->next; q->next = NULL; Node *p = head->next->next; Node *s = p->next; while(NULL !=
2014-03-21 07:36:08
543
原创 单链表排序
//假设由小到大进行排序 Node* Sort(Node* head) { node *p p = head; node *p q= p->next; int m,n,temp; int nlength = length(head); if(NULL == head || NULL == head) { return head; } while(NULL !=
2014-03-21 00:44:38
480
原创 单链表的插入
//假设顺序为从小到大 Node * Insert(Node* head,int e) { Node* q = head; Node* p = (Node*)malloc(sizeof(Node)); p->data = e; while((edata) && NULL != q->next) { q=q->next; } if(NULL == q->next) {
2014-03-21 00:25:08
612
原创 单链表编程删除
Node* Dele(Node* head,int value) { if(NULL != head->next) { Node* p = head; Node* q = p; while(value != p->data) { q=p; p = p->next; } q->next = p->next; } return head; }
2014-03-20 23:52:20
602
转载 单链表的建立、测长和打印
#include using namespace std; typedef struct St { int data; Node * next; }Node; Node* Create() { Node* q= (Node*)malloc(sizeof(Node)); int x; Bool circle = True;
2014-03-20 23:41:30
506
转载 斐波那契数列
几个例子: 1、 三角形的三边关系定理和斐波那契数列的一个联系: 有长为144cm的铁丝,要截成n小段(n>2),每段的长度不小于1cm,如果其中任意三小段都不能拼成三角形,则n的最大值为多少? 2、 现一对兔子每月能生一对小兔,而每对小兔在他出生后的第三个月,就能开始生小兔,如果兔子是长生不老的,由一对刚出生的小兔开始,一年之后会有多少对兔子? 斐波那
2014-03-20 11:40:08
769
转载 strcpy memcpy memset
一、strcpy 函数原型:extern char* strcpy(char*dest,const char *src) 头文件:#include 功能:把从src地址开始含有' \o'结束符的字符串复制到以dest开始的地址空间 说明:src和dest 必须有足够空间来容纳src的字符串 返回:指向dest的指针 char *strcpy(char* strDestination,c
2014-03-19 20:42:32
631
转载 常见基本类型所占字节数
16位编辑器: char:1个字节 short :2 int:2 unsigned int:2 long:2 long long:8 float:4 double:8 32位编辑器: char:1 short:2 int:4 unsigned int:4 long:4 unsigned long:4 long long:8 float:4 doubl
2014-03-14 21:34:47
661
转载 sizeof
#include #include using namespace std; //数组是“传址调用”的,调用者只需将实参的地址传递过去 /*void foo3(char a3[3]) { cout } void foo4(char a4[]) { cout }*/ int main() { //1、基本数据类型 省略 //2、指针变量
2014-03-14 13:41:28
551
转载 几种常见类型与零值进行比较
1、bool flag = FALSE if(flag) if(!flag) 2、float flag m = 0.000001 if((flag >= -m)&&(flag 3、指针 p if(p == NULL) if(p != NULL ) 4、int flag if(flag == 0) if(flag != 0)
2014-03-14 09:06:51
634
转载 GetMemory()
#include using namespace std; #include using namespace std; //1,调用GetMemory( str )后, str并未产生变化,依然是NULL.只是改变的str的一个拷贝的内存的变化 //2,strcpy( str, "hello world" );程序运行到这将产生错误。 //3,new的时候有可能内存出错,应该在*
2014-03-12 18:35:44
691
转载 有关操作系统的基本知识
1、试解释操作系统原理中的作业、进程、管程的各自定义。 作业:用户在一次解题或者食物处理过程中要求计算机所做工作的集合。它包括用户程序所需的数据以及控制命令。作业是由一系列的步骤组成。 进程:一个程序在一个数据集合上的一次运行。所以一个程序在不同数据集合上的运行是不同的线程,一个程序在同一个数据集合上的多次运行都是不同的进程。 线程:是进程中的一个实体,是被系统独立调度和执行的基本单位。
2014-03-10 21:51:27
563
原创 OSI七层模型
第一层:物理层 传输比特流 网线、中继器和集线器 均属于这一层 第二层数据链路层 帧传输 交换机属于这一层 第三层网络层 IP、地址解析协议 路由器属于这一层 第四层传输层 第五层 会话层 建立连接 第六层 表示层 是否压缩解密 第七层 应用层 应用程序接口
2014-03-09 10:44:43
633
原创 友元函数的几点注意事项和实例
友元函数说明如下 : 1)必须在类的说明中说明友元函数,说明时以关键字friend开头,后跟友元函数的函数原型,友元函数的说明可以出现在类的任何地方,包括在private和public部分; 2)注意友元函数不是类的成员函数,所以友元函数的实现和普通函数一样,在实现时不用"::"指示属于哪个类,只有成员函数才使用"::"作用域符号; 3)友元函数不能直接访问类的成员,只能访问对象成员
2014-03-09 09:12:00
1431
转载 C++----引用
1、什么是引用?申明和使用引用要注意哪些问题? 答:引用就是某个变量的别名,对应用的操作与对变量直接操作相同。 (1)初始化:申明一个引用的时候切记要对它进行初始化引用申明完毕后。 (2)引用名不可另外赋值:相当于目标变量名有两个名称,即目标原名和引用名。不能把该引用名作为其他变量别名。 引用本身不占据存储单元,系统也不会给引用分配存储单元。 (3)不能建立数组的引用 2、将引用作为函
2013-07-12 17:25:24
513
原创 调试错误:error C2001&&warning C4129
1、error C2001: newline in constant: "\\sdf\\day\\\"或者"\\sdf\\day\"即在最后的地方多一个'\'和少一个'\'的错误都会出现C2001这个错误。 2、warning C4129: 'd' : unrecognized character escape sequence \\sdf\\\day\\或者"\\sdf\day\"即在中间
2013-04-27 17:04:00
1653
原创 进入IT一年半
在大学里我学的是数学专业,几乎没有动手写过程序。机缘巧合我跌跌撞撞的走进IT行业的大门,进入一个很大的IT公司,这是我的幸运。 开始代码 对于我来说犹如天书,只是记得几乎半年的时间我都是很焦灼的对待我的工作,每天晚上都不能安然入睡,却不知从何处下手。半年后,我离开了那家公司来到了现在的公司。虽然仍然是编程,但是难度却大大的下降。我终于可以很从容的面对我的工作了。 其实,我有一个很大很大
2013-03-15 16:57:13
485
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人