文件glist.h头文件如下
#ifndef _GLIST_H_
#define _GLIST_H_
typedef enum {ATOM,LIST}ElemTag;
typedef struct _GList
{
ElemTag tag;
union
{
char data;
struct _GLi...
分类:
其他好文 时间:
2014-12-16 08:48:00
阅读次数:
205
5.1广义表—广义表的定义和基本运算 ? 顾名思义,广义表是线性表的推广。也有人称其为列表(Lists,用复数形式以示与统称的表List 的区别)。 ⒈广义表的定义和性质 我们知道,线性表是由n 个数据元素组成的有限...
分类:
其他好文 时间:
2014-12-12 11:52:50
阅读次数:
345
已经实现的操作有:
A. 根据二叉树的广义表表达式来创建二叉树(含表达式合法性检测);
B. 根据二叉树的前序和中序遍历列表来创建二叉树;
C. 根据二叉树的中序和后序遍历列表来创建二叉树;
...
分类:
编程语言 时间:
2014-10-20 20:47:47
阅读次数:
286
题目链接:http://poj.org/problem?id=1068思路: 对栈的模拟,将栈中元素视为广义表,如(((()()()))),可以看做 LS =,对于可以配对的序列,如 看做一个元素,其 W 值为1; 同理,为一个元素,其W值为1,看做一个元素, 其W值为 与 、的W的值的和加 ...
分类:
其他好文 时间:
2014-10-07 02:04:12
阅读次数:
266
这个是我从网上复制下来的,哪里? 忘记了,总是,不是我的东西我会说明或者给一个链接。广义表,应用很广泛,仔细想想吧,想想你曾经在哪些方面不知不觉中用到了广义表,呵呵。广义表的概念 广义表,又称列表,是线性表的推广。广义表中放松对表元素的原子限制,容许它们具有其自身结构。1、广义表定义 广义表...
分类:
其他好文 时间:
2014-08-20 19:35:52
阅读次数:
200
结点类型定义: 1 /* 2 * 结点类型 3 */ 4 enum NodeType { head, atom, sublist }; 5 6 /* 7 * 定义广义表的结点结构(注意union的使用) 8 */ 9 struct Node10 {11 Boolean flag;...
分类:
其他好文 时间:
2014-07-19 09:16:35
阅读次数:
257
原文:javascript实现数据结构:广义表广义表是线性表的推广。广泛用于人工智能的表处理语言Lisp,把广义表作为基本的数据结构。广义表一般记作: LS =
(a1, a2, ..., an)LS是广义表的名称,n是它的长度,ai可以是单个元素,也可以是广义表,分别称为广义表LS的原子和子表。习...
分类:
编程语言 时间:
2014-06-05 14:59:05
阅读次数:
464
感觉数组这一段没讲什么太多的东西。先是讲了下定义,就是每个维度上都有对应的前驱后继,首尾元素例外。操作只有初始化 销毁 取元素
修改元素。然后讲了下适合用顺序存储结构,多维情况下根据下标(j1 j2 j3 ... jn)找到对应像素的存储位置 cn= L, ci-1= bi* ci,
LOC = L...
分类:
其他好文 时间:
2014-05-16 07:59:53
阅读次数:
264
节点形态:
存储结构:
每个节点都包含一个标志域,如果为0(即原子),那么仅含一个值域,如果是1(列表),那么说明该节点包含两个指针域。
需要注意的是求广义表长度的操作,其实计算的是根节点及其兄弟的个数,比如图2中广义表的长度为2,图3中广义表的长度为4。
深度的定义方式是递归式的,定义空表深度为1,原子深度为0,广义表的深度...
分类:
其他好文 时间:
2014-05-15 07:57:32
阅读次数:
331