一个算法与数据结构的题目请大家帮忙!不胜感谢!(自学科目)以后麻烦大家了~~

Vee_C 2006-11-08 09:34:28
1.设有上三角矩阵(Aij)n*n,将其上三角元素逐行存于数组B[1..m]中(m充分大) 使B[K]=Aij,且K=f1(i)+f2(i)+c 试推导出函数f1,f2以及常数C(要求f1,f2不含常数项)

2.三对角矩阵(Aij)n*n是除主对角线以及和对角线相邻的两条对角线以外的元素全为0,将其三条对角线上的元素逐行地存于数组B[1...3n-2]中使得B[K]=Aij 求:
①用 i,j表示K的下标变换公式.
②用K表示 i,j的下标变换公式.

3.设计一个查找鞍点的算法.所谓鞍点是该位置上的元素所在的行中最大而所在列中最小.

4.构造一个N阶魔方阵 .即每一行每一列和主轴对角线的元素之和均相等.

5.将数组A[0..n-1]中所有奇数移到所有偶数之前 ,要求不另增存储空间 且时间复杂度为O(n).

6.试写出两个多项式想乘的算法.

7.输入一个由若干单词组成的文本行,每个单词之间用若干了空格隔开,统计此文本行中单词的个数.

8.设计一个算法测试一个串T是否为回文.

9.编写实现串替换运算的算法.

西西~~~一次就发了这么多的问题 不要见怪啊.我算法是自学中 难免问题多了 希望大家能在百忙中抽出时间看看小弟的题目,不胜感谢...

会写的大虾 请将算法发到我的E-mail:zhentoo_pa@hotmail.com(注明标号,希望有main函数和输入输出语句,我好调试,谢谢)....
...全文
713 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vee_C 2006-11-18
  • 打赏
  • 举报
回复
那真是....~呵呵~`大哥我啥都不说了 谢谢啊~~
Vee_C 2006-11-15
  • 打赏
  • 举报
回复
呵呵~~大家是用C++实现的 好啊!我MARK一下咯!我的算法在写中..
suzhou123789abc 2006-11-15
  • 打赏
  • 举报
回复
5.将数组A[0..n-1]中所有奇数移到所有偶数之前 ,要求不另增存储空间 且时间复杂度为O(n).

6.试写出两个多项式想乘的算法.

这两道我曾经写过代码的,暂时想不起来完整的代码了.
回去考虑考虑,再帮你.


whpeace 2006-11-15
  • 打赏
  • 举报
回复
扫描一遍:
用R[N]记录行中最大值的列号
用C[N]记录列中最大值的行号
再用:
for(i=0;i<N;i++)
{
if(R[C[i]]==i)
cout<<data[R[i]][C[i]];
}
烂CSDN编辑器,回格删除就卡死,程序白编了,没心情答题了
还有楼上的算法太慢了
whpeace 2006-11-15
  • 打赏
  • 举报
回复
2答:
同理第一题,用K + (i-1)*i/2 + (N*(N-1)/2 -(N-i)*(N-i-1)/2) = (i*N) + j
可以导出
whpeace 2006-11-15
  • 打赏
  • 举报
回复
好像在做数学题:
1答:
K+(i+1)*i/2 = (i*N) + j,可以导出答案,所以理解一下K=f1(i)+f2(i)+c应该是K=f1(i)+f2("j")+c吧
三仙半 2006-11-12
  • 打赏
  • 举报
回复
3\
void Get_Saddle(int A[m][n])//求矩阵A中的马鞍点
{
for(i=0;i<m;i++)
{
for(min=A[i][0],j=0;j<n;j++)
if(A[i][j]<min) min=A[i][j]; //求一行中的最小值
for(j=0;j<n;j++)
if(A[i][j]==min) //判断这个(些)最小值是否鞍点
{
for(flag=1,k=0;k<m;k++)
if(min<A[k][j]) flag=0;
if(flag)
printf("Found a saddle element!\nA[%d][%d]=%d",i,j,A[i][j]);
}
}//for
}//Get_Saddle
jie00677 2006-11-12
  • 打赏
  • 举报
回复
7\ count the NO of words in a line
main()
{ char line[80];
int flag=0,i=0,count=0;
gets(line); //input a line string
while(i<strlen(line))
{ if(line[i]==' ')//空格时往下读人字符
{ flag=0;
i++;
continue;
}
if(!flag) //当读单词第一个字符时计数,以后的往下读
{ flag=1;
count++;
}
i++;
}
printf("NO of word in a line are:%d\n",count);
}
shunan 2006-11-10
  • 打赏
  • 举报
回复
楼上说的没错!问题要有针对性,你那么多问题还要源代码?,关于算法的问题最忌讳的就是源代码,你算法明白了,用哪种语言实现还不简单吗?
mqg0009 2006-11-10
  • 打赏
  • 举报
回复
一次写一个还能帮上忙,太多了
LiChenYue 2006-11-10
  • 打赏
  • 举报
回复
蹭点分!
Vee_C 2006-11-10
  • 打赏
  • 举报
回复
其实我对上面的算法确实没有多想过...只是觉得有一点难度..好吧我回去好好的写一下他们的算法 如果有问题来找大家!!西西!!可要等我啊!!
weiyiabout 2006-11-09
  • 打赏
  • 举报
回复 1
你一下子就写这么多,我不知道你以前经过思考没有,如果没有的话还是自己先想一下吧,别一上来就向别人要源代码,将自己的写出来,出现了问题大家一起讨论,这样才能有提高
Vee_C 2006-11-09
  • 打赏
  • 举报
回复
没人来吗? 我自己顶一下~~ 快来人

33,010

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧