05 2011 档案
摘要:可以用表来定义一种关于一元多项式的抽象数据类型。若最高幂数比较小,使用数组来存储幂系数是比较简单的;但如果出现幂数跨度比较大的情况,使用链表结构存储是比较合适的。具体内容参见《数据结构与算法分析:c语言描述》第三种。这里先实现了数组存储数据的简单情况。代码如下:#include <stdio.h>#include <stdlib.h>#define MaxDegree 10typedef struct _Polynomial{ int CoeffArray[ MaxDegree + 1 ]; int HighPower;} * Polynomial;//Maxint M
阅读全文
摘要:表是一种常用的数据结构,它支持的基本操作有插入和删除。最基本地可以用数组来实现表结构,但因为数组中的数据都是连续存储的,若动态指定数组,会造成空间的浪费。而且在有序插入删除操作时,都需要调整元素在数组中的位置,因此,一般不使用数组来实现表结构。一般来说,使用链表来实现表结构。下面的程序中写了16个常用的链表函数,它源于http://www.bccn.net/Article/kfyy/cjj/jszl/200708/5227_2.html这篇文档,但上述文档中实现的是一个无表头的线性表结构。本文中对上述程序稍作修改,实现了一个有表头的链表结构。具体代码如下: 1 /* 2 * linear li
阅读全文
摘要:一、堆排序思想假定我们要排序的内容存放在数组中,希望按照从小到大的顺序排列。此时需要一个(max)heap协助。首先,把数组中的内容构建成堆。那么,堆顶的数即为数组的最大值。其次,删除堆顶,并且对堆重新排序,直至堆中的数都被删除。依次删除的值即为从大到小排序。具体的算法思想参见《数据结构与算法》一书,7.5节内容。二、c代码实现#include <stdio.h>#include <stdlib.h>#define LeftChild(i) (2 * ( i ) + 1)typedef int ElementType;void Swap(ElementType *x,
阅读全文
摘要:From:http://www.51testing.com/?227476/action_viewspace_itemid_99672.html1、总结背景在linux系统下,如果你下载并安装了应用程序,很有可能在键入它的名称时出现“command not found”的提示内容。如果每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了。这涉及到环境变量PATH的设置问题,而PATH的设置也是在linux下定制环境变量的一个组成部分。本案例基于RedHat AS4讲解环境变量定制的问题。2、变量简介Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个
阅读全文
摘要:编辑.vimrc这样文件在其中加入如下两行就可以了,此法对#号提示符下的操作无效。let &termencoding=&encodingset fileencodings=utf-8,gbk,ucs-bom,cp9361、配置文件的位置 在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”。例如,/root目录下,通常已经存在一个.vimrc文件。2、设置语法高亮显示1) 打开vimrc,添加以下语句来使得语法高亮显示:syntax on2) 如果此时
阅读全文
摘要:题目:写一个程序, 要求功能:求出用1,2,5这三个数不同个数组合的和为100的组合个数。如:100个1是一个组合,5个1加19个5是一个组合。。。。 请用C++语言写。答案:最容易想到的算法是:设x是1的个数,y是2的个数,z是5的个数,number是组合数注意到0<=x<=100,0<=y<=50,0<=z=20,所以可以编程为:number=0;for (x=0; x<=100; x++)for (y=0; y<=50; y++)for (z=0; z<=20; z++)if ((x+2*y+5*z)==100)number++;cout&
阅读全文
摘要:题目:在二元树中找出和为某一值的所有路径输入一个整数和一棵二元树。从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。打印出和与输入整数相等的所有路径。例如输入整数22 和如下二元树 10 / \ 5 12 / \ 4 7则打印出两条路径:10, 12 和10, 5, 7。思路:1、当访问到某一节点时,把该结点的值添加到当前和变量,且把该结点压入栈中。2、若结点为叶子结点,且当前和变量==期望的和,则打印栈中的结点值,即为所需的路径。3、若结点不是叶子结点,继续访问它的左孩子结点,访问它的右孩子结点。4、删除该结点。包括从当前和变量中减去结点值,从栈中弹出结点值。此时,已回到父结
阅读全文

浙公网安备 33010602011771号