活跃农民
- 积分
- 515
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- 学分
- 个
- 注册时间
- 2013-11-9
- 最后登录
- 1970-1-1
|
本帖最后由 frk 于 2016-2-2 03:32 编辑
通过这次作业对quick sort和recursion有了更深的理解,感觉recursion理解的还不是很透彻。
MergeSort 是不stable的, 在我的MergeSortedQUeue中,如果两个item 相等,先enqueue q1中的,这样就打乱了出现的顺序。
QuickSort 是stable的,equal的item 还是按照原来的顺序出现。
Mergesort :
[ 8 8 4 7 3 8 7 8 9 1 ]
[ 1 3 4 7 7 8 8 8 8 9 ]
Quicksort:
[ 1 3 7 3 5 2 4 5 8 2 ]
[ 1 2 2 3 3 4 5 5 7 8 ]
Mergesort time, 10 Integers: 0 msec.
Quicksort time, 10 Integers: 0 msec.
➜ hw8 javac -g ListSorts.java
Note: ListSorts.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
➜ hw8 java ListSorts
Mergesort :
[ 2 3 9 8 2 6 1 3 3 6 ]
[ 1 2 2 3 3 3 6 6 8 9 ]
Quicksort:
[ 3 5 9 2 7 3 8 7 0 6 ]
[ 0 2 3 3 5 6 7 7 8 9 ]
Mergesort time, 100 Integers: 1 msec.
Quicksort time, 100 Integers: 0 sec.
➜ hw8 java ListSorts
Mergesort :
[ 4 5 0 6 3 8 7 2 4 3 ]
[ 0 2 3 3 4 4 5 6 7 8 ]
Quicksort:
[ 5 3 4 9 8 3 9 7 0 0 ]
[ 0 0 3 3 4 5 7 8 9 9 ]
Mergesort time, 1000 Integers: 6 msec.
Quicksort time, 1000 Integers: 3 sec.
➜ hw8 java ListSorts
Mergesort :
[ 5 3 3 6 6 1 9 4 9 9 ]
[ 1 3 3 4 5 6 6 9 9 9 ]
Quicksort:
[ 2 7 7 7 7 9 8 9 7 6 ]
[ 2 6 7 7 7 7 7 8 9 9 ]
Mergesort time, 10000 Integers: 17 msec.
Quicksort time, 10000 Integers: 19 msec.
|
|