2016-09-11 13 views
-4

私は初心者であり、Javaのスキルを強化しようとしています。ここで疑問が...Javaでの検索と並べ替え

私たちの提案16週間のコーススケジュールによると、このプログラミングプロジェクト それは あなたの最終学年の8パーセントの価値がある、遅くとも週13の月曜日より完成されてはならない

です。あなたの仕事の提出の詳細については、 ホームページのあなたの割り当て指示書を参照してください。あなたの全体のコース の評価情報はコースガイドにあります。

  1. シェルソートは、バブルソートのバリエーションです。隣接する の値を比較する代わりに、シェルのソートでは、バイナリ検索のコンセプトが適用され、スワップが行われる前に値が比較される 'ギャップ'が、 であると判断されます。 の最初のパスでは、ギャップはアレイのサイズの半分です。後続の各パスについて、 ギャップ・サイズが半分にカットされます。最後のパスでは、ギャップサイズは1であるため、バブルソートと同じ になります。パスはスワップが発生しなくなるまで続きます。 以下最初のパスを示す第18章 (p.681)でバブルソートの例のように値の同じセットが、ある:

9 6 8 12 3 1 7 - 配列のサイズは7であり、そうギャップは3

9 6 8 12 3 1 7であろう - 9及び12を順に既にあるので、無 ^ ---------^

9 6 8 12 3 1 7 - 6と3は順不同ですので、スワップ ^ ---------^

9 3 8 12 6 1 7 - 8と1は順不同ですので、スワップ ^ ---------^

9 3 1 12 6 8 7 - 12と7は順不同ですので ^ --- ------^

9 3 8 7 6 1 12 - パスの最後に1


私は誰もが私に直接コードを与えたくないが、どのように意見をいただければ幸いですそれを始めるのが苦労しているので、質問に取り組むために。私は初心者ですので、本当に高度な方法を知っていることに注意してください!お時間を

おかげで

+0

あなたの質問に示されているように、最初のパスを実装するコードの一部を書くことができますか? – rcgldr

+0

[StackOverflowの "ここではどのような話題がありますか"](http://stackoverflow.com/help/on-topic)のポイント3を参照してください。これまで問題を解決するために行った作業の要約を含める必要があります。 –

答えて

0

「私は質問に取り組む方法についての意見をいただければ幸いです」

まず、ソートので、あなたは何を理解することがバブルソートとシェル上のWikipediaの記事を読みます彼らがやっています。または、レビュー「第18章のバブルソートの例(p.681)」 ....

次に、課題をもう一度読んで、内容を理解しているかどうかを確認してください。

このようなことを実現するための鍵は、まずを理解することです。アルゴリズムはです。

関連する問題