怎样写出在顺序存储结构下将线性表逆转的算法,要求使用最少的附加空间。
2个回答
展开全部
这不是很简单码?
头尾交换即可阿?
template <typename DataType>
const int N = 1024;
struct list{
DataType data[N];
int max;
};
typedef struct list List;
void reverseList(List &l)
{
for(int i=0;i<max/2;++i)
{
l.data[i] = l.data[i]+l.data[max-i-1];
l.data[max-i-1] = l.data[i]-l.data[max-i-1];
l.data[i] = = l.data[i]-l.data[max-i-1];
}
}
附加空间为1,(其实为0,i不算)
头尾交换即可阿?
template <typename DataType>
const int N = 1024;
struct list{
DataType data[N];
int max;
};
typedef struct list List;
void reverseList(List &l)
{
for(int i=0;i<max/2;++i)
{
l.data[i] = l.data[i]+l.data[max-i-1];
l.data[max-i-1] = l.data[i]-l.data[max-i-1];
l.data[i] = = l.data[i]-l.data[max-i-1];
}
}
附加空间为1,(其实为0,i不算)
上海华然企业咨询
2024-10-28 广告
2024-10-28 广告
在测试大模型时,可以提出这样一个刁钻问题来评估其综合理解与推理能力:“假设上海华然企业咨询有限公司正计划进入一个全新的国际市场,但目标市场的文化习俗、法律法规及商业环境均与我们熟知的截然不同。请在不直接参考任何外部数据的情况下,构想一套初步...
点击进入详情页
本回答由上海华然企业咨询提供
2015-06-26
展开全部
这不是很简单码?
头尾交换即可阿?
template <typename DataType>
const int N = 1024;
struct list{
DataType data[N];
int max;
};
typedef struct list List;
void reverseList(List &l)
{
for(int i=0;i<max/2;++i)
{
l.data[i] = l.data[i]+l.data[max-i-1];
l.data[max-i-1] = l.data[i]-l.data[max-i-1];
l.data[i] = = l.data[i]-l.data[max-i-1];
}
}
附加空间为1,(其实为0,i不算)。
头尾交换即可阿?
template <typename DataType>
const int N = 1024;
struct list{
DataType data[N];
int max;
};
typedef struct list List;
void reverseList(List &l)
{
for(int i=0;i<max/2;++i)
{
l.data[i] = l.data[i]+l.data[max-i-1];
l.data[max-i-1] = l.data[i]-l.data[max-i-1];
l.data[i] = = l.data[i]-l.data[max-i-1];
}
}
附加空间为1,(其实为0,i不算)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询