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

Đề tài: Help !!!!select sort bằng đệ quy !!

  1. #1
    Ngày gia nhập
    02 2009
    Bài viết
    0

    Wink Help !!!!select sort bằng đệ quy !!


    Mọi người ơi ,giúp mình với mình đang có một bài toán xây dựng giải thuật select sort bằng đệ quy
    giải thuật không đệ quy : với dãy a[n] sắp xếp tăng dần
    Code:
    for (i=1;i<=n-1;i++)
    for(j=i+1;j<=n;j++)
          if (a[i]>a[j])
             {
                tg=a[i];
                a[i]=a[j];
                a[j]=tg;
              }
    nhưng khi xây dựng bằng đệ quy mình thấy bí quá ,mong mọi người giúp đỡ!

  2. #2
    Ngày gia nhập
    01 2009
    Nơi ở
    Hà Nội
    Bài viết
    205

    Ý tưởng như thế này : đệ quy để tìm số nhỏ nhất trong n số ---> phải tìm số nhỏ nhất trong n-1 số ---> phải tìm số bé nhất trong n-2 số......

    Còn nếu như khó quá không làm ra thì thôi đừng làm nữa. Làm đệ quy chậm lắm.

  3. #3
    Ngày gia nhập
    02 2009
    Bài viết
    0

    Trích dẫn Nguyên bản được gửi bởi trubavuong Xem bài viết
    Ý tưởng như thế này : đệ quy để tìm số nhỏ nhất trong n số ---> phải tìm số nhỏ nhất trong n-1 số ---> phải tìm số bé nhất trong n-2 số......

    Còn nếu như khó quá không làm ra thì thôi đừng làm nữa. Làm đệ quy chậm lắm.
    hic !cám ơn bác,bác có thể nói chi tiết một chút được không?bít là lâu nhưng đây là bài tập của thầy cho để so sánh độ phức tạp giữa hai giải thuật đệ quy và không đệ quy .ko làm thì teo !hic!

  4. #4
    Ngày gia nhập
    04 2008
    Bài viết
    336

    đệ quy selection sort với vài ngàn phần tử là stack overflow rồi, bạn viết code ra cho thầy thấy là được.
    với lại cái bạn post là interchange sort chứ ko phải selection sort.
    code ra gió bão

  5. #5
    Ngày gia nhập
    01 2008
    Nơi ở
    UIT
    Bài viết
    129

    Các thuật toán kiểu phân đoạn như quicksort, mergersort dùng recursion thì ổn nhưng các kiểu so sánh đổi chỗ nhiều lần như bubble, interchange, selection ... nếu sử dụng recursion tốn rất nhiều bộ nhớ.

  6. #6
    Ngày gia nhập
    01 2009
    Nơi ở
    Hà Nội
    Bài viết
    205

    Mặc định Help !!!!select sort bằng đệ quy !!

    Trích dẫn Nguyên bản được gửi bởi 6220119 Xem bài viết
    đệ quy selection sort với vài ngàn phần tử là stack overflow rồi, bạn viết code ra cho thầy thấy là được.
    với lại cái bạn post là interchange sort chứ ko phải selection sort.
    Mình tưởng đấy là bubble sort (nổi bọt) chứ ?

  7. #7
    Ngày gia nhập
    04 2008
    Bài viết
    336

    bubble sort là so sánh 2 phần tử liên tiếp
    code ra gió bão

  8. #8
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Lấy ý tưởng từ code này :
    C++ Code:
    1. #include <iostream>
    2. #include <boost/array.hpp>
    3. #include <iterator>
    4. #include <algorithm>
    5.  
    6. using namespace std;
    7.  
    8. const int SIZE = 4;
    9.  
    10. void recursive_select( boost::array< int, SIZE >& R, int i ) {
    11.  
    12.     if( i > ( R.size() - 1 ) )
    13.         return;
    14.    
    15.     else {
    16.         unsigned min_i = i;
    17.         for( unsigned o = i + 1; o < R.size(); ++o ) {
    18.             if( R.at( o ) < R.at( min_i ) )
    19.                 min_i = o;
    20.         }
    21.  
    22.         swap( R.at( i ), R.at( min_i ) );
    23.    
    24.         recursive_select( R, i + 1 );
    25.     }
    26.  
    27. }
    28.  
    29. int main() {
    30.  
    31.     boost::array< int, SIZE > R = { 33, 5, 61, 7 };
    32.     recursive_select( R, 0 );
    33.  
    34.     // print array
    35.     copy( R.begin(), R.end(), ostream_iterator< int >( cout, " " ) );
    36.  
    37.     return 0;
    38.  
    39. }

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

  1. Thuật toán C++ Ưu nhược điểm các kiểu sort Interchange sort, Selection sort, Insertion sort, Sharke sort , Quick sort, Heap sort
    Gửi bởi duythanhnguyen trong diễn đàn Thắc mắc CTDL & Giải thuật
    Trả lời: 7
    Bài viết cuối: 23-09-2013, 01:16 AM
  2. làm thế nào để select 1 bảng mà có cột sẽ có giá trị select từ 1 bảng khác??
    Gửi bởi xiaoku trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 9
    Bài viết cuối: 31-08-2011, 10:56 AM
  3. Lập trình C Cách hoạt động của thuật toán Selection Sort và Bubble Sort như thế nào?
    Gửi bởi kuin0903 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 26-07-2011, 10:39 AM
  4. Các thuật toán sắp xếp mảng | Bubble sort, Shak sort, Insertion sort, Selection, ...
    Gửi bởi kids trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 11-04-2009, 10:05 PM
  5. Thuật toán Flash sort, Shear Sort cụ thể như thế nào?
    Gửi bởi tun_tun trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 16-05-2008, 01:43 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