关于数据结构的几个问题,请求高手回答。(非常非常急需答案,请大家帮忙)
1:有一组待排序的记录的关键字初始排列如下,请用堆排序的方法排序并画图分析筛选过程(49,38,65,97,76,13,27,49)2:对于一个栈,给出输入的项A,B,C...
1:有一组待排序的记录的关键字初始排列如下,请用堆排序的方法排序并画图分析筛选过程(49,38,65,97,76,13,27,49)
2:对于一个栈,给出输入的项A,B,C,如果输入项序列由A,B,C所组成,试给出栈全部可能输出序列。
3:对于二维数组float a [5] [4]计算:
(1)数组元素的数目
(2)数组起始地址为2000,每个元素长度为32位计算元素a [3] [2] 的存储位置
4:(1)用你熟悉的程序语言写出折半查找算法
(2)描述折半查找的思路并分析其平均查找长度
5:有一段电文,统计电文中字母的频度为:f(‘C’)=1,f(‘S’)=2,f(‘T’)=3
f(‘’)=3,f(‘A’)=4,;试用哈夫曼算法对其编码,画出哈夫曼编码树读出上 述字母的哈夫曼编码。
6:假设二叉排序数 t 的各元素值均不同,设计一个算法按递增次序打印各个元素值。(算法可以用你熟悉的一种程序语言)
7:普利姆算法和克鲁斯卡尔算法构造最小生成树。
真的非常急需答案,请大家帮个忙,先在这里谢谢了。
也可把答案发送到我的邮箱370137936@qq.com 展开
2:对于一个栈,给出输入的项A,B,C,如果输入项序列由A,B,C所组成,试给出栈全部可能输出序列。
3:对于二维数组float a [5] [4]计算:
(1)数组元素的数目
(2)数组起始地址为2000,每个元素长度为32位计算元素a [3] [2] 的存储位置
4:(1)用你熟悉的程序语言写出折半查找算法
(2)描述折半查找的思路并分析其平均查找长度
5:有一段电文,统计电文中字母的频度为:f(‘C’)=1,f(‘S’)=2,f(‘T’)=3
f(‘’)=3,f(‘A’)=4,;试用哈夫曼算法对其编码,画出哈夫曼编码树读出上 述字母的哈夫曼编码。
6:假设二叉排序数 t 的各元素值均不同,设计一个算法按递增次序打印各个元素值。(算法可以用你熟悉的一种程序语言)
7:普利姆算法和克鲁斯卡尔算法构造最小生成树。
真的非常急需答案,请大家帮个忙,先在这里谢谢了。
也可把答案发送到我的邮箱370137936@qq.com 展开
2个回答
展开全部
2 CBA ABC BAC BCA ACB
3 共有20个元素 a【3】【2】的存储地址为2000+17*32=2544
4(1)int binsearch(table R[ ],keytype k)
{int low,mid,high;
low=1;high=n;
while(low<=high)
{mid=(low+high)/2;
if (k==R[mid].key) return mid;
else if (k<R[mid].key) high=mid-1;
else low=mid+1;
}
return (0);
}
low 和high表示当前查找区间的上界和下界,当前查找区间的中值设为mid。如果关键字k与中值不相等,则查找区间缩小为上次查找区间的一半。
折半查找的平均查找长度ASL=(n+1)/n乘上(以2为底的n+1的对数-1)。
注 在这个里面没法表示对数 所以就这样写了
3 共有20个元素 a【3】【2】的存储地址为2000+17*32=2544
4(1)int binsearch(table R[ ],keytype k)
{int low,mid,high;
low=1;high=n;
while(low<=high)
{mid=(low+high)/2;
if (k==R[mid].key) return mid;
else if (k<R[mid].key) high=mid-1;
else low=mid+1;
}
return (0);
}
low 和high表示当前查找区间的上界和下界,当前查找区间的中值设为mid。如果关键字k与中值不相等,则查找区间缩小为上次查找区间的一半。
折半查找的平均查找长度ASL=(n+1)/n乘上(以2为底的n+1的对数-1)。
注 在这个里面没法表示对数 所以就这样写了
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询