回 帖 发 新 帖 刷新版面

主题:时间紧迫,考试题目类型,请大虾们帮帮忙啊!!!在线等……十分感谢!!!!!!

全是算法,只要核心程序即可。谢谢啦!!!
1、判断带头结点的双循环链表是否对称
2、循环队列的出队算法
3、把一个十进制改为2——9进制(这个要求全部的,用栈的方法)
4、以二叉链表为存储结构来算任意一个节点为X的双亲
5、判断一棵二叉树是否为完全二叉树



十分感谢大虾们!!!!!!!

回复列表 (共6个回复)

沙发

bool func1(DblNode *L)
{

}

板凳

bool func1(DblNode *L)
{
   DblNode *p,*q;
   p=L->next;
   q=L->prior;
   while(p->next!=q&&p!=q)
   {
        if(p->data!=q->data)
             return false;
        p=p->next;
        q=q->prior;

   }
   return true;
}
这是第一个,没仔细考虑;大概就这样吧

3 楼

bool dequeue( queue Q )
{
     if(isEmpty(Q))
         return false;
     front = (front+1)%maxnum;
     return true;
}
第二个,很简单  不知道是不是你想要的

4 楼


谢谢啦!!!其他的能帮我想想吗???十分感谢啊!!!

5 楼

其实这些算法都很简单的,如果你想学习编程的话,最好还是自己编编试试,就算不怎么会,在论坛里也可以请教一下啊。

6 楼

#include "iostream.h"
#include "linkstack.h"
#include "math.h"
int DtoN(int n,int dec)    ////将十进制的dec转化为n进制(2=< n <=9)的数并返回
{
    LinkStack S;
    Init_Stack(S);
    int temp=dec;
    int i=0;
    while((temp/n)!=0)
    {
        Push(S,temp%n);
        temp=temp/n;
        i++;
    }
    Push(S,temp);
    temp=0;
    int result=0;
    while(!isEmpty(S)&&getTop(S,temp))
    {
        result+=temp*pow(10,i);
        i--;
        Pop(S);
    }
    return result;
}
int main()
{
    for(int i=2;i<=9;i++)
        cout<<DtoN(i,138)<<endl;
    return 0;
}


我来回复

您尚未登录,请登录后再回复。点此登录或注册