变量按作用域可分为全局变量与局部变量,谭浩强老师的书上建议说“不在必要时不要使用全局变量”,所以我就这么想过如果我能在编程的过程中找到一种算法把原本要用全局变量的程序用局部变量也能使它有效的运行,这样我所作的工作是否真的有用,有效呢??我很迷惑,因为我在学习数据结构的过程做了一些小实验,同时也遇到了一些因难。(我所用的教材是《算法与数据结构》C语言版)
我所到的问题是有关链表与基于链表的一些常用数据结构的基本功能的一些算法。比如我所用的教材上所写顺序表的删除,插入算法(它们是用类C描述的函数),它们所返回值是void类型,由于函数的调用机制,我们只能在主函数处定义全局顺序表,这样才能调用那些void类型的函数。但我却作了这样和改动,把void类型改成自定义的链表类型,这样我能就局部的,也就是能在主函数定义局部自定义链表变量,并且也能成功的调用所改动后的函数去实现链表的一些基本操作功能:如下是个人改动后的一个例子:(本人所用的是VC6.0)
#include
#include
#define MAXSIZE 500
typedef int ElemType;//数据元素
typedef struct//顺序链表结构
{
ElemType data[MAXSIZE];//
int leght;//
}MyList;//我的链表
MyList InitList()//顺序表的初始化//这里就是改动的
{
MyList L;
L.leght=0;
return L;
}
int ListLeght(MyList L) //求链表长
{
return L.leght;
}
ElemType GetElem(MyList L,int i)//求链表的元素
{
return L.data[i-1];
}
ElemType LocateElem(MyList L,ElemType x)//按值查找链表元素
{
int i;
while(i<=L.leght&&L.data[i-1]!=x)
i++;
if(i<=L.leght)
return i;
else
return 0;
}
创造与魔法 安卓版v1.0.0750
创造与魔法是一款开放世界手游,在游戏中玩家可探索这个奇妙的世
创造与魔法修改版 最新版v1.0.0750
创造与魔法无限点券版是款探索冒险游戏,该款游戏的操作还是蛮自
战争与文明官方版本 安卓版v1.7.16
战争与文明是一款由上海邮通科技有限公司开发的战争策略游戏,这
迷你世界0元领皮肤无限迷你币版 最新安卓版v1.43.0
迷你世界0元购买皮肤版是这款开放沙盒冒险建造游戏的特殊破解版
创造与魔法无限经验版 安卓版v1.0.0750
创造与魔法无限经验版是款可以改造环境,整个游戏的自由度还是蛮