【数据结构】以顺序表存储结构设计算法,将里面的数据元素实现就地逆转
顺序表:(伪代码)void Reverselist(sqlist L){elemtype e;int i,j;for(i=0;i<=L.length-1,i++){j=L.length-1-i;e=L.elem[j];L.elem[j]=L.elem[i];L.elem[i]=e;}}
顺序表:
(伪代码)
void Reverselist(sqlist L) //void在返回值位置上,表示不返回;Reverselist函数名,表示反转链表;sqlist L表示被调函数的形参,这里函数不需要对原结构体(未写出)中的data和length进行修改,所以用L就行
{
elemtype e; //elemtype是元素类型,数据结构中一种结构中元素的类型不一定是整型,浮点型......使用elemtype代表各种数据类型,不再一一说明(默认为int);显然e是变量
int i,j; //函数内部变量
for(i=0;i<=L.length-1,i++) //for循环执行顺序1243243,不满足2直接跳出for循环(即含括号内容)
{
j=L.length-1-i;
e=L.elem[j];
L.elem[j]=L.elem[i];
L.elem[i]=e;
}
}
void Reverselist(sqlist L) //void在返回值位置上,表示不返回;Reverselist函数名,表示反转链表;sqlist L表示被调函数的形参,这里函数不需要对原结构体(未写出)中的data和length进行修改,所以用L就行
{
elemtype e; //elemtype是元素类型,数据结构中一种结构中元素的类型不一定是整型,浮点型......使用elemtype代表各种数据类型,不再一一说明(默认为int);显然e是变量
int i,j; //函数内部变量,这里表示数组的下标。数组下标是从0~数组长度减一。
for(i=0;i<=L.length-1,i++) //for循环执行顺序1243243,不满足2直接跳出for循环(即含括号内容)
{
j=L.length-1-i; //i为0的话,j就为最后一个数
e=L.elem[j]; //e作为中间变量暂存j下标对应的元素值[j]
L.elem[j]=L.elem[i];
L.elem[i]=e;
}
}

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)