我认为计算排序是最好的算法.阅读它并尝试理解它,然后按如下方式编写自己的实现:
java.util.Random填充int[])一旦你这样做,你就会意识到当你可以利用数字的某些属性时,排序是多么简单(在这种情况下,它们介于0..9之间).
选择排序是一种很好的直观排序算法,可用于下一个实现.这是一种比较排序,并不假设任何有关数字范围的内容.现实生活中的许多人使用这种算法排序:
您可能希望实现其他二次算法只是为了更好地掌握基础知识,但下一步将是学习递归,特别是划分和征服算法.
如果没有先理解基本的递归,你不会想直接进入合并排序/快速排序,因为它可能会变得过于庞大.
做通常的递归练习,阶乘,斐波那契等.如果你需要指导,请从stackoverflow请求指针.甚至可能已经存在关于学习递归的良好答案的问题.
您可能希望实现合并排序的合并部分,甚至在您完全理解递归之前.这是一个非常有教育意义的练习:
| 归档时间: |
|
| 查看次数: |
707 次 |
| 最近记录: |