Announcement

Collapse
No announcement yet.

[C-HELP] key nhị phân tìm kiếm

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [C-HELP] key nhị phân tìm kiếm

    #include <iostream>
    #include <conio.h>
    typedef struct TNode
    {
    int x;
    TNode *pLeft;
    TNode *pRight;
    }TNode;
    typedef TNode *tree;
    void createtree(tree &t)
    {
    t=NULL;
    }
    TNode *create(int x)
    {
    TNode * p;
    p=new TNode;
    if(p==NULL) exit (1);
    p->x=x;
    p->pLeft=p->pRight=NULL;
    return p;
    }
    void setLeft(TNode *p,int x)
    {
    if(p==NULL)
    printf("\nKhong co nut \n ");
    else
    if(p->pLeft!=NULL)
    printf("p da co nut ben trai \n");
    else
    p->pLeft=create(x);
    }
    void setRight(TNode *p,int x)
    {
    if(p==NULL)
    printf("\nKhong co nut \n ");
    else
    if(p->pRight!=NULL)
    printf("p da co nut ben trai \n");
    else
    p->pRight=create(x);
    }
    int add(tree &t,TNode *p)
    {
    p=new TNode ;
    if(t)
    {
    if(t->x==p->x)
    return 0;
    else if(t->x>p->x)
    return add(t->pLeft,p);
    else
    return add(t->pRight,p);
    }
    t=p;
    return 1;
    }
    void NLR(TNode *p)
    {
    if(p!=NULL)
    {
    printf("%d",p->x);
    NLR(p->pLeft);
    NLR(p->pRight);
    }
    }
    void LNR(TNode *p)
    {
    if(p!=NULL)
    {
    LNR(p->pLeft);
    printf("%d",p->x);
    LNR(p->pRight);
    }
    }
    void main()
    {
    int x;
    TNode *p;
    tree t;
    while (true)
    {
    printf("\Nx: ");
    scanf("%d",&x);
    if(x<0) break;
    create(x);
    }
    LNR;
    getch();
    }
    e code hơi tệ k biết sai chỗ nào mong được sự giúp đỡ

  • #2
    e phải nói rõ lỗi của mình thì mọi người mới giúp e đc.

    Comment


    • #3
      e không in được cay nhi phan tim kiem LNR

      Comment


      • #4
        Originally posted by 12520276 View Post
        e không in được cay nhi phan tim kiem LNR
        chạy debug đi bạn, bạn edit lại phần code trên vào thẻ php cho dễ đọc luôn hen
        Hãy là chính mình!

        Comment


        • #5
          Originally posted by sinhvien.uit View Post
          Do dạo này các bạn năm nhất lập rất nhiều topic thắc mắc nhưng kỹ năng đặt câu hỏi rất yếu khiến nhiều topic khó có thể tìm câu trả lời nên ad viết nhanh một số quy tắc này để các bạn tham khảo. Từ bây giờ topic này lập ra mà không tuân thủ các quy tắc này có thể bị xóa kèm theo infraction không báo trước.

          0. Quy tắc tối thượng: Các mẫu câu: "Chạy không được", "Bị lỗi", "Có lỗi rồi", "Lỗi ở đâu đó", "chạy không ra", v.v... không được chấp nhận.

          1. Code phải để trong thẻ [PHP] hoặc thẻ [CODE]. Để cho đẹp hơn nữa có thể sử dụng các pastebin như http://pastebin.com/

          2. Khi nêu khúc mắc về một đoạn code phải nêu rõ đoạn code đó chủ đích được viết ra để làm gì. Giải quyết quyết bài toán hay minh họa vấn đề nào? Nếu bạn không phải là người viết code thì liên hệ hỏi người viết để biết, nếu chính người viết đoạn code cũng không biết nó dùng làm gì thì đoạn code đó
          nên bỏ đi, không đáng để thắc mắc.

          3. Nếu đoạn code có lỗi (compile time họăc runtime) phải nêu rõ hàng nào bị lỗi, nội dung thông báo lỗi, thông tin trình biên dịch. Chú ý quy tắc 0

          4. Nếu đoạn code không phát sinh error khi chạy, nhưng cho kết quả sai mục đích ban đầu thì phải mô tả rõ ứng với trường hợp dữ liệu nào sẽ cho kết quả sai, kết qủa mong muốn là gì và kết quả chương trình đưa ra là gì. Chú ý quy tắc 0
          Bạn có 24h để sửa lại post cho đúng quy định

          Comment


          • #6
            nhìn code hết muốn đọc :choler:, bạn bỏ vào thẻ CODE đi cho dễ nhìn.....

            Code bạn chỉ mới nhập mà chưa tạo cây rỗng thì sao mà in được. Với lại bạn duyệt cây mà khai báo node thì sao mà duyệt được.h:

            Ít ra cái node p cũng phải trỏ đến trường info mới xuất đc chứ...... Hai hàm setleft và setright hơi tối nghĩa, mình k biết để làm j nữa...:cry: nên mình đã sửa lại thành hàm addtree.

            Code mới của bạn đây.
            Chúc bạn thành công.....

            Code:
            #include <iostream>
            #include <conio.h>
            typedef struct TNode
            {
            	int info;
            	TNode *pL;
            	TNode *pR;
            }TNode;
            typedef TNode *tree;
            void createtree(tree &t)
            {
            	t=NULL;
            }
            int addtree(tree &T, int x)
            {
            	if(T!=NULL)
            	{
            		if(T->info==x)
            			return 0;
            		else
            		{
            			if(x<T->info)
            				addtree(T->pL,x);
            			else
            				addtree(T->pR,x);
            		}
            	}
            	else
            	{
            		T=new TNode;
            		T->info=x;
            		T->pL=NULL;
            		T->pR=NULL;
            	}
            	return 1;
            }
            void NLR(tree t)
            {
            	if(t!=NULL)
            	{
            		printf("%d\t",t->info);
            		NLR(t->pL);
            		NLR(t->pR);
            	}
            }
            void LNR(tree t)
            {
            	if(t!=NULL)
            	{ 
            		LNR(t->pL);
            		printf("%d\t",t->info);
            		LNR(t->pR);
            	}
            }
            void main()
            {
            	int x;
            	tree t;
            	createtree(t);
            	while (true)
            	{
            		printf("\Nx: ");
            		scanf("%d",&x);
            		if(x<0) 
            			break;
            		else
            			addtree(t,x);
            	}
            	LNR(t);
            	getch();
            }
            Last edited by 12520332; 22-05-2013, 00:28.

            Comment


            • #7
              Originally posted by 12520332 View Post
              nhìn code hết muốn đọc:choler:, bạn bỏ vào thẻ CODE đi cho dễ nhìn.....
              Chờ 2 ngày sau bạn đó từ đảo về sửa. Nhắc nhở 3 ngày rồi mà vẫn không chịu phản hồi thread này, hỏi xong bỏ đi như thế vô trách nhiệm quá.

              Comment

              LHQC

              Collapse
              Working...
              X