Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: heap_sort

  1. #1
    Ngày gia nhập
    11 2007
    Nơi ở
    ha noi
    Bài viết
    4

    Mặc định heap_sort

    các bác ơi e cài đặt heap_sort ko bit sai tai dau ma cho ra ket quả toàn sai
    PHP Code:
    #include<stdlib.h>
    #include<stdio.h>
    #include<conio.h>
    #include<string.h>
    #include<time.h>
    #define Max 10
    /****************************/
    void init(int a[],int n){
        for(
    int i=0;i<n;i++)
        
    a[i]=rand()%100;
    }
    /***********************/
    void print(int a[],int n){

     for(
    int i=0;i<n;i++)
     
    printf("%d  ,",a[i]);
    }
    /*********************************************/
    void swap(int *a,int *){
      
    int temp;
      
    temp=*a;
      *
    a=*b;
      *
    b=temp;

    }
    /*******************************************/
    void max_heapify(int a[],int i,int n){
        
    int left,right,largest=i;

        
    left=2*1+1;
        
    right=2*i+2;
        if(
    left<n&&a[left]>a[largest]) largest=left;
        if(
    right<n&&a[right]>a[largest]) largest=right;
        if(
    largest!=iswap(&a[largest],&a[i]);
    }
    /*******************************************/
    void heap_sort(int a[],int n){
        for(
    int i=n/2;i>=0;i--)
        
    max_heapify(a,i,n);
         for(
    i=n-2;i>=0;i--){
         
    swap(&a[0],&a[i+1]);
         
    max_heapify(a,0,i+1);
         }
    }
    /******************************************/
    main(){
    int n,a[Max];
    clrscr();
    printf("\n vao so phan tu cua mang ");
    scanf("%d",&n);
    init(a,n);
    printf("\ncac phan tu luc ban dau la\n");
    print(
    a,n);

    printf("\nmang sau khi sap xep la:\n");
    heap_sort(a,n);
    print(
    a,n);
    getch();
    return 
    0;


    các bác giúp e với e sắp thi rùi.thanks nhìu

  2. #2
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Cậu viết hơi lằng nhằng với cái Heap Sort này, tớ cũng chả biết được cậu sai ở đâu nhưng đoán được là cậu vẫn chưa thông về Heap Sort. Cậu thử đọc lại một lần về cái heap sort này đi xem có giúp được gì không?
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  3. #3
    Ngày gia nhập
    02 2007
    Nơi ở
    TP.HCM - dưới cầu SG
    Bài viết
    12

    Trích dẫn Nguyên bản được gửi bởi daretofail Xem bài viết
    các bác ơi e cài đặt heap_sort ko bit sai tai dau ma cho ra ket quả toàn sai
    PHP Code:
    /*******************************************/
    void max_heapify(int a[],int i,int n){
        
    int left,right,largest=i;

        
    //left=2*1+1; 
        
    left 1;
        
    right=2*i+2;
        if(
    left<n&&a[left]>a[largest]) largest=left;
        if(
    right<n&&a[right]>a[largest]) largest=right;
        
    /////////////if(largest!=i) swap(&a[largest],&a[i]);
        
    if( largest != ) {
          
    swap(&a[largest],&a[i]);
          
    max_heapify(a,largest,n);
        }

    Chẳng qua bạn gõ thiếu / sai code của tác giả thôi ( tôi cũng chỉ search trên internet là biết liền )
    Thân!
    Nơi nào khiến anh dừng bước, nơi đó có em.

Các đề tài tương tự

  1. Heap_sort...
    Gửi bởi giangnk trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 7
    Bài viết cuối: 05-01-2008, 11:28 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn