专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅
对于制造多品种产品的企业,产品与零部件的关系不再是简单的一对多而是多对多关系。由于大量通用件在不同产品间的相互借用,在树状结构中表现为不同的结点可以有相同的子树;即使在同种产品内部,由于一些标准件的重用,同样使零部件关系呈现出复杂的交织。 在SQLSERVER2000下测试通过BOM遍历算法,更深入具体的可以继续深入: ifexists(select*fromdbo.sysobjectswhereid=object_id(N’[dbo].[Bom]’)andOBJECTPROPERTY(id,N’IsUserTable’)=1) droptable[dbo].[ [阅读全文] [PDF]
都说现今内存不值钱了,哈,也就不考虑空间复杂度的问题了,弄了俩辅助数组,觉得解这题还是挺容易的,就是不知道有没有BUG。 问题描述: 假设图G采用邻接表存储,,www. ,编写一个实现连通图G的深度优先遍历(从顶点v出发)的非递归算法。 算法思路: 就是深度优先的思路。同样是一个visited[]数组,标记已访问过的顶点。又用了一个_vertex[]数组,用于存放顶点。 算法实现: #include<stdio.h> #include<malloc.h> #include<stdlib.h> #defineMAXSIZE100 [阅读全文] [PDF]
根据树中结点的遍历规律及顺序直接写出其非递归算法。 先序非递归算法 【思路】 假设:T是要遍历树的根指针,若T!=NULL 对于非递归算法,引入栈模拟递归工作栈,初始时栈为空。 问题:如何用栈来保存信息,使得在先序遍历过左子树后,能利用栈顶信息获取T的右子树的根指针? 方法1:访问T->data后,将T入栈,遍历左子树;遍历完左子树返回时,栈顶元素应为T,出栈,再先序遍历T的右子树。 方法2:访问T->data后,将T->rchild入栈,遍历左子树;遍历完左子树返回时,栈顶元素应为T->rchild,出栈,遍历以该指针为根的子树。 【算 [阅读全文] [PDF]
    在编程设计开发中搜索个目录及其子目录下所有文件是比较常见需求而采用递归方式进行搜索则是个非常直观算法但是由于目录中文件数量往往比较大而每个文件名又往往占用许多空间目录嵌套比较深情况下这种递归算法对于堆栈是个严重威胁本文给出种非递归算法进行目录下所有文件检索和遍历中国自学编程网整理发布www.zxbc.cn  typedef BOOL (*PROCESS_FILE_FUNCTION)(LP [阅读全文] [PDF]
法:(通常) 用般 2叉链表做存储结构用到个栈同时为这个栈设置个等大辅助用以标识栈中节点被访问次数状态实现如下: //存储结构: typedefstructBTnode......{ chardata; structBTnode*lchild; structBTnode*rchild; }BTnode,*BTree; //C实现: postOrd(BTreeT)......{ top=0; tags[MAX_TREE_DEGREE];//tagstack [阅读全文] [PDF]
最近碰到要从一个存储层次结构的链表中拿数据出来处理的问题。层次结构嵌套的层次是不明确的,所以要用递归来读取。递归其实就是深度优先搜索,也就是回溯法。递归是求解问题本省能够划分为形式、结构相同,但是问题规模逐渐变小的子问题的问题的利器。 所以递归实现有两个关键点: 一就是问题划分出来的子问题和原问题有相同的形式、结构,只要这样才能利用同一个函数体,即所说的递归调用。 二就是子问题的规模逐渐变小,这个在递归调用时就体现在参数上。所以递归函数肯定是有参数的,如果没有参数,则一定是用了全局变量。当问题规模足够小的时候,就是递归调用返回的时候。在网上看到GOOGLE [阅读全文] [PDF]
1 共6条 分1页