05 2017 档案
摘要:删除表中第i个元素 头结点及尾结点指针域的变化 查找过程中循环条件的变化 删除元素过程中的指针运算 如图: 程序; #include<stdio.h>#include<stdlib.h>#define OK 1#define ERROR 0#define OVERFLOW 0typedef stru
阅读全文
摘要:在表中第i个元素之前插入一个元素。主要有三个方面: 头结点及尾结点指针域的变化 查找过程中循环条件的变化 插入元素过程中的指针运算 在表建好以后,调用GetElemP_DuL()函数查找第i个元素,返回第i个元素的地址,否则返回空指针。 如图: 程序: #include<stdio.h>#inclu
阅读全文
摘要:单链表的缺点是只能往前,不能后退,虽然有循环单链表,但后退的成本还是很高的,需要跑一圈。在这个时候呢,双向链表就应运而生了,再加上循环即双向循环 链表就更加不错了。所谓双向链表只不过是添加了一个指向前驱结点的指针,双向循环链表是将最后一个结点的后继指针指向头结点,这在遍历时很关键。 程序: #inc
阅读全文
摘要:要求:讲两个有序链表合并成一个有序链表,结果链表仍使用原来两个链表的存储空间,不占用其他存储空间,表中允许有重复的数据。 算法:(1)指针pa和pb初始化,分别指向连个链表La和Lb的第一个节点 (2)Lc的结点取值为La的头结点 (3)指针pc初始化,指向Lc的头结点 (4)当指针Pa和Pb均未达
阅读全文
摘要:首先确认系统可否休眠: 在终端执行如下命令: sudo pm-hibernate 命令执行后,Ubuntu 将会自动关机并断电。再次开机后,如果一切正常的话我们将可以直接恢复到上次关机时的状态, 这表明当前 Ubuntu 系统的休眠模式工作正常。 重新启用休眠: 如果通过上述步骤已经确认 Ubunt
阅读全文
摘要:将表的第i个节点删去: 如图: 代码: include<stdio.h>#include<stdlib.h>#define OK 1 #define ERROR 0#define OVERFLOW 0typedef struct LNode{ int data; struct LNode *next
阅读全文
摘要:问题2:根据制定数据获取所在的位置 找到则返回值,不然返回0 算法: (1)从第一个结点起,依次与e相比较 (2)找到一个其值与e相等的数据元素,则返回其在链表中的“位置” 》这里循环条件是p不为空,以及p->data不等于e (3)如果查遍整个链表没有与e相等是元素,则返回0 代码: #inclu
阅读全文
摘要:问题1:查找是否存在第i个元素,若存在用e返回第i个元素的值。不然返回0 查找部分算法: (1)从第一个结点(L->next)顺链扫描,用指针指向当前扫描到的节点,p初值p=L->next (2)定义j作为计数器,累计当前扫描到的结点数,初值为1 (3)当p指向扫描到下一个节点时,计数器加1; (4
阅读全文
摘要:标准输入:0 < , <<或者0< 0<< 标准输出:1 >,>> 或者1>,1>> 错误输出:2 2>>,2> /dev/null 这个设备,是linux 中黑洞设备,什么信息只要输出给这个设备,都会给吃掉 将标准输出,错误输出都发送给/dev/null中 $ ls test.sh test1.s
阅读全文
摘要:刚接触 Visual Studio的时候大多数人会写个Hello World的程序试一下,有的人会发现执行结束后输出窗口会一闪而过,并没有出现Press any key to continue的字样。无论是在Visual Studio 2008、2010还是2012中都有这种情况出现,有些人可能会用
阅读全文
摘要:比如在~/work/c$有两个文件creatlist.cpp 和Sqlist.h并且creatlist.cpp 是调用Sqlist.h的 如何进行编译:$ g++ -o creatlist -I ~/work/c creatlist.cpp
阅读全文
摘要:问题1: 1.L.elem = (ElemType *)malloc(LIST_INIT_SIZE*sizeof(ElemType));2.newbase = (ElemType *)realloc(L.elem,(L.listsize+LISTINCREMENT)*sizeof(ElemType)
阅读全文
摘要:Java中单例模式是一种常见的设计模式 单例模式有以下特点: 1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一实例。 3、单例类必须给所有其他对象提供这一实例。 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话框、打印机
阅读全文