zoukankan      html  css  js  c++  java
  • 二叉排序树之按大小遍历

    从大到小按递减顺序输出所有关键字不小于x的数据元素

    递归方法

    #include "stdafx.h"
    #include<iostream>
    using namespace std;
    typedef struct BSTreeNode
    {
    	int data;
    	struct BSTreeNode *lchild,*rchild;
    }BSTree;
    int _tmain(int argc, _TCHAR* argv[])
    {
    	return 0;
    }
    void output(BSTree *bst,int x)
    {
    	if(bst)
    	{
    		if(bst->data>=x)output(bst->rchild,x);
    		if(bst->data>=x)cout<<bst->data;
    		if(bst->data>=x)output(bst->lchild,x);
    	}
    }
    

     非递归方法

    #include "stdafx.h"
    #include<iostream>
    using namespace std;
    typedef struct BSTreeNode
    {
    	int data;
    	struct BSTreeNode *lchild,*rchild;
    }BSTree;
    int _tmain(int argc, _TCHAR* argv[])
    {
    	return 0;
    }
    void output(BSTree *bst,int x)
    {
    	BSTree *s[100],*p=bst;
    	int top=-1;
    	while(p||top>-1)
    	{
    		while(p)
    		{
    			if(p->data>=x)
    			{
    				s[++top]=p;
    				bst=p->rchild;
    			}
    		}
    		if(top>-1)
    		{
    			p=s[top--];
    			if(p->data>=x)
    				cout<<p->data;
    			if(p->data>=x)
    				p=p->lchild;
    		}
    	}
    }
    
  • 相关阅读:
    textarea输入字符有限制
    linux 简单命令
    jQuery animate()
    两张图切换
    表单验证 靠name获取
    jquery验证手机号码
    倒计时
    锚点链接 阻止a标签跳转
    滚动监听: bootstrap 的scrollspy
    MySQL 02
  • 原文地址:https://www.cnblogs.com/tgkx1054/p/2657819.html
Copyright © 2011-2022 走看看