【初心者歓迎】C/C++室 Ver.46【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0071デフォルトの名無しさん
2007/12/30(日) 16:45:14}while(this == NULL);
これでいいのか?
strcmpの後のifだけど、これはたぶん、>65氏の言う「ダミーノード」の方法で消すことが可能。
「次」がある限り、「次の次」は、(ダミーかもしれないが)必ず存在する。
「次」がダミーなら、strcmpのifが真になることはないはず。
ところで、この書き方だったら比較は必ず次の要素と行われてるから、
ウルトラマンウルトラマン仮面ライダーだったらいいけど、
ウルトラマン仮面ライダーウルトラマンだったときに後ろのウルトラマンが
消えてくれない気がするんだけど、なんでこんなアルゴリズムにしようと思ったの?
普通に書いたら
・まずリストの先頭と、それ以外の要素を順に比較。かぶってたら片っ端から消去。
・次に、上の操作で出来たリストの二番目と、それ以降すべての要素と比較、かぶってたら以下略
・それをリストの最後から二番目まで繰り返す
にならない?
それともよく知らないけど>66の方が効率いいの?
あと、よけいなお節介だけど、変数名にthisとかnewとか使う癖があるなら、直した方が良い。
■ このスレッドは過去ログ倉庫に格納されています