バケット法のアルゴリズムを用いて、入力した任意の文字列
(例)
"tanaka"
"yamashita"
"suzuki"
"yamamoto"
を、
"suzuki"
"tanaka"
"yamamoto"
"yamashita"
といった具合にアルファベット順にソートするプログラムについて、
バケット法のアルゴリズム自体は理解しているのですが、それをいざプログラムにするというと、構造がイマイチ思いつきません。
C言語でバケット法を用いて文字列のソートを行うプログラムを、
具体的に、どなたか教えてくださらないでしょうか?
初歩的な質問ですみません。一応、C言語の基本的なことについては
大体理解しているつもりですが、まだまだC言語初心者のため、
なるべく簡単なプログラムを作成していただければ幸いです。
No.2ベストアンサー
- 回答日時:
学校の課題だというのに
> なるべく簡単なプログラムを作成していただければ幸いです。
とか
> 参考として完成形のプログラムを教えていただけないでしょうか?
とか堂々と書いちゃまずいでしょ。
そもそもバケットソートの場合
欠点は、取りうる値の種類mに対応するバケツが必要な点である。仮にキーが32ビット整数という以外に事前情報がないデータ列をソートする場合、約43億個のバケツが必要にある。長さに制限のない可変長の文字列の場合は、もはや有限個のバケツでは対応できない。この欠点は、基数ソートと組み合わせることで回避できる場合もある。
バケットソート - Wikipedia
http://ja.wikipedia.org/wiki/%E3%83%90%E3%82%B1% …
という特性があるので、提示されている条件だけでは
プログラムにしようがないような気もしますけど?
#適当に仮定を置けば別ですが
No.3
- 回答日時:
そもそも、バケットソートは有限個の整数(ここ重要)に対して用いるアルゴリズムです。
課題で文字列のソートにバケットソートを使用するように指定してあるならば、理解に苦しみますね。
No.1
- 回答日時:
>バケット法のアルゴリズム自体は理解している
ならばフローチャートを紙に書きましょう。
そうすれば、今回のソートにどの様な変数、
どの様な機能を持った関数が必要か明確になると思います。
この回答への補足
お早い回答ありがとうございます。
フローチャートについてですが、自分でも一応考えています。
なので全体の流れも把握しているつもりなのですが、漠然とした
考えしか浮かばず、プログラムに書き起こす事ができません。
時間があれば自分でもう少し考えたいところなのですが、
大学の授業の課題になっているものなので、提出まで時間があまりありません。
参考として完成形のプログラムを教えていただけないでしょうか?
自分勝手な注文で申し訳ないですが、お答えいただければ幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C#の問題です。 文字列型の配列 s[100] にキーボードから入力された100文字以内の文字列(単 2 2022/06/22 15:18
- C言語・C++・C# C言語で 英文字のみからなる文字列、”Radar”、”WasItACatISaw”、”a”、””(空 5 2022/12/20 15:17
- C言語・C++・C# c言語について array[i]-‘0’ これってどーゆー意味ですか? (ちなみに16進数を10進数 5 2022/12/06 18:39
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- その他(プログラミング・Web制作) プログラミングについて(Python) 添付した画像はC言語で簡単に作ったソースで、1つの配列に5つ 3 2022/09/10 19:15
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- C言語・C++・C# C言語の質問です。 以下の命令を実行するプログラムを作りました ①文字列aとbの長さを表示 ②aとb 1 2022/04/29 15:35
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- C言語・C++・C# c言語 コマンドライン引数 4 2023/02/09 18:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
正しい五十音順について
-
アルゴリズムとプロトコールの違い
-
[ EXCEL VBA ] 図形を読み込む...
-
シードを考慮したトーナメント...
-
最大公約数を求めたい!
-
JPEG圧縮で8×8に分割する理由に...
-
あいまい検索(文字列一致率)
-
Visual studio2019 C#で生まれ...
-
BCDについて
-
偏りのある乱数のアルゴリズム
-
アルゴリズムとは、フローチャ...
-
gooという検索エンジンの後にGo...
-
退化木をバランス木にしたい
-
迷路プログラム
-
0除算して、落ちるプログラムと...
-
あるプログラムのコマンドライ...
-
65536は2の何乗なのでしょうか?
-
VBAで仕様書は書きますか?
-
Excelで4096点以上のFFTの方法
-
画像を読み込むのと取り込むの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
正しい五十音順について
-
アルゴリズムとプロトコールの違い
-
BCDについて
-
[ EXCEL VBA ] 図形を読み込む...
-
Stuck
-
グループを均等に分けるには?...
-
画像から文字を認識してテキス...
-
Dijkstraて
-
期間重複チェックがわかりません
-
JPEG圧縮で8×8に分割する理由に...
-
多変数関数の最小値を求めるプ...
-
OpenCVのライセンスについて
-
データを圧縮したい
-
ルービックキューブを揃えるた...
-
5人のテストの点数を入力すると...
-
C♯で電卓を作成しています。演...
-
ドロネー三角形のプログラム
-
vbaで、連立方程式を解く方法に...
-
動画で間違ったこと言っている
-
トップダウン解析とボトムアッ...
おすすめ情報