(Radix Sort) PowerPoint PPT Presentation

presentation player overlay
About This Presentation
Transcript and Presenter's Notes

Title: (Radix Sort)


1
????
  • (Radix Sort)

2
  • ??????????????????????,??????(Radix
    sort)?????????????????,????????

3
??
  • ????????????????????????,???????????
  • ??????????????k???,??????????n??????kn???????????
    ?
  • ????????????,???????????,????????????????,??(nlogn
    )?????????????

4
????
????
???
5
?????
???
?????????????,??????????,???????(character
lists)????????????????????????????????????0?1??9?

6
?????
???
??????????????,??????????,??????????,?????2???????
???????????????????
7
????????? 015,56,107,228,312,371,452,456,575,71
4,749,833
?????,?????????????(???)?,??????????,?????9-8-3???
???????????,?????????
8
???
  • ???gtC?????
  • msd_sort(int a , int b , int l, int r, int
    factor)
  • int i, j, v, count l , c l
  • for ( i 0 i lt l i )
  • count i 0
  • for ( i l i lt r i )
  • v a i / factor 10
  • count v l

9
  • c 0 0
  • for ( i 1 i lt l i )
  • count i count i 1
  • c i count i
  • for ( i 1 i lt r i )
  • j a i / factor 10
  • b count j a i

10
  • for ( i 1 i lt r i )
  • a i b i 1
  • factor / 10
  • for ( i 0 i lt 10 i )
  • j c i l
  • v ci l l 1
  • if ( v gt j factor gt 0 )
  • msd_sort( a, b, j, v, factor )

11
  • gt???????
  • ?????????????
  • ?????????????O(nlogr m),r???????????,m????
  • ??????,??????O(n),???????,??(n n),n?????

12
????-????
  • include ltstudio.hgt
  • void adjust ( int , int )
  • int data 10 75, 23, 98, 44, 57, 12, 29, 64,
    38, 82
  • void main ( )
  • int i , j, k - 0, lst, temp 10 10

13
  • int order (10) 75,23,98,44,57,12,29,64,38,82
  • printf ( \n ltlt Rp sort gtgt\n )
  • printf ( Number )
  • for ( i 0 i lt 10 i )
  • printf ( d , data i )
  • puts ( )
  • for ( i 0 i lt 60, i ) printf ( -)
  • while ( n lt 10 )

14
  • for ( i 0 i lt 10 i )
  • lst ((data i / n ) 10 )
  • temp lsd order lsd data i
  • order lsd
  • printf ( \nAccess )
  • for ( i 1 i lt 10 i )
  • for ( j 0 j lt order i j )
  • data k temp i j
  • printf ( d , data k )
  • k

15
  • order i 0
  • n 10
  • k 0
  • puts ( )
  • for ( i 0 i lt 60 i ) printf ( - )
  • printf ( \nSorting )
  • for ( i 1 i lt 10 i )
  • printf ( d , data i )

16
?????
  • External Sort

17
  • ???????,?????????????????????,????????????????????
    ?????,????????????????????

18
??
  • ????????????????,???????,?????????????????????????
    ????
  • ?????????????runs),???????????????,???????????

19
????????
  • ???????
  • ?????
  • ?????
  • ???
  • ???????
  • ????
  • ?????????

20
?????????
?? ??? ??? ???? ???? ???
?? ???? Bubble O(n2) O(n2) ???
?? ???? Insertion O(n2) O(n2) ??
?? ???? Selection O(n2) O(n2) ??
?? ???? Shell O(nlogn) O(ns)1ltSlt2 ???
?? ???? Quick O(nlogn) O(n2) ???
?? ???? Heap O(nlogn) O(nlogn) ???
?? ???? Binary tree O(nlogn) O(n2) ???
?? ???? Merge O(nlogn) O(nlogn) ??
21
  • ????????????.
  • ????????????.
  • ???????????????????????.?'?'????,?'??'?????.
  • ????2?
  • ????
  • ???????????????.
  • ????
  • ?????????????????,?????????

22
?????
  • ??????????????????O(N)
  • ???????O(logN)
  • ????????O(1)?

23
???
  • ????????????????????????,????????????
  • ?????????,??N2?Nlog N??????
  • ?????????????
  • ????????
  • ???????????
Write a Comment
User Comments (0)
About PowerShow.com