数据结构 算法(求高手解答)有一个由自然数构成的序列采用单链表存储,试编写算法判断该序列是否是fibonacci序列(fibonacci序列是1,1,2,3,5,8,13,21,34,…).

来源:学生作业帮助网 编辑:作业帮 时间:2024/10/03 21:06:43
数据结构 算法(求高手解答)有一个由自然数构成的序列采用单链表存储,试编写算法判断该序列是否是fibonacci序列(fibonacci序列是1,1,2,3,5,8,13,21,34,…).
xTNA~ƀK6i"pc+ӻ>.H61&+E`b ŕh 'wivf+_mX3o1@4{e6h1̫zhi5K +퇖JTKsRfB43wک]&|{;).1f@{|w> 9$w`HlA/b/9~x‹'{vÇ K>bO3ʊ3h$pLfO0$L\UrԠ_ue어Rʴײd#%GduDJR@S,c!_=eZCI*yG7($H19!&MR4oһQ;$A6F-cjM ufHMK .KœOGQ~YJf"t! )h3^v!CȔh& ߩ!e69<H(q +:#"_q;6BxI1Jr+b>K[fsB·’%F뙙A]w涬u}?A!VC~۲N4<:TqG?V_Q)ϳ(O+

数据结构 算法(求高手解答)有一个由自然数构成的序列采用单链表存储,试编写算法判断该序列是否是fibonacci序列(fibonacci序列是1,1,2,3,5,8,13,21,34,…).
数据结构 算法(求高手解答)
有一个由自然数构成的序列采用单链表存储,试编写算法判断该序列是否是fibonacci序列(fibonacci序列是1,1,2,3,5,8,13,21,34,…).

数据结构 算法(求高手解答)有一个由自然数构成的序列采用单链表存储,试编写算法判断该序列是否是fibonacci序列(fibonacci序列是1,1,2,3,5,8,13,21,34,…).
用C语言给你写了一个,其他语言的话再说,算法思想基本就是从表头开始遍历,按照fibonacci的特性进行检验
按单链表的特点,节点命名为node,
一个节点有long int型的data和节点指针型的next两个属性,以下是判断方法
bool Check(node head)
{
//a为当前遍历的节点,b为a之后的节点
node *a, *b;
bool isFibonacci;
//初始化
a = head;
b = head -> next;
//验证最初的两个数
if(!(a->data == 1) && (b->data == 1))
isFibonacci = false;
else
{
isFibonacci = true;
//根据特性,遍历检查
while(b->next != NULL)
{
if((b->next->data) == a->data + b->data)
{
a = b;
b = b->next;
}
else
{
isFibonacci = false;
break;
}
}
}
return isFibonacci;
}