プログラミング詳しい人ちょっときてえええええええええええ

1 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:43:03.690 ID:AOcUGhuH0
配列Aと配列Bの要素が同じであるかの確認でどうしたらいいの?
ただし順番は異なるとする
2 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:43:34.554 ID:7kr83enI0
そしたら違うデータじゃん
7 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:45:28.538 ID:AOcUGhuH0
>>2
同じ要素があるかの確認
3 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:43:55.388 ID:5Ynzr+ZR0
forとifで
11 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:46:28.994 ID:AOcUGhuH0
>>3
具体的に
12 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:46:54.688 ID:7kr83enI0
>>11
それでわからなきゃアホじゃん
17 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:49:35.041 ID:AOcUGhuH0
>>12
俺が求めているのは最適な答え、アルゴリズムであって抽象的な方法じゃない
具体性を求めてそれに答えを出せないならすぐに答えを提示できないお前の方がアホということになる
4 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:44:15.925 ID:iG9aXMkg0
順番が異なるならそれは違う配列だろ

「あいうえお」と「あういおえ」が文字列として同じかと言えば違うって判定にならなきゃおかしいだろ

10 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:46:15.939 ID:AOcUGhuH0
>>4
配列が違うかどうかじゃない
「あいうえお」と「あういおえ」なら同じ
「あいうえお」と「あういおか」なら違う
という判定をしたい
5 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:44:31.439 ID:ERGH6nbe0
ソートして頭から確認
6 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:45:20.643 ID:PHzevNAGa
ソートしてそれぞれifが一番手っ取り早い気がする
9 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:45:41.740 ID:q0syCCHGa
要素の内容が同じかと言われたら並び順が違うなら違うし
要素の中に入ってるものが同じかどうかを知りたいならソートして比較するしかない
13 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:48:03.929 ID:AOcUGhuH0
>>9
並び方が違うのは前提条件であってそれが違うかどうかの判定には入らない
14 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:49:05.434 ID:00Ezm5/L0
配列Aをソートした配達Cと配列Bをソートした配列D用意して比較すれば簡単じゃね
15 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:49:14.237 ID:UbNcTlHM0
集合やね
16 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:49:21.982 ID:blku8lUx0
Pythonならsetに変換して直接比較できる
無理ならソートして比較
ソートできるものじゃなければfor,if
18 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:49:42.603 ID:GAT5GBDR0
sortとforとif
19 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:50:36.869 ID:uFnsM3c50
sortして比較すればいい、何の言語使ってるか知らんけどだいたいsortは簡単にできるから言語名+ソートで調べればおk
20 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:50:38.142 ID:blku8lUx0
集合扱う型に変換できるならそれが一番シンプルかな
24 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:52:31.819 ID:uFnsM3c50
>>20
同じ要素が入ってる配列のときに困らない?
[1,2,3,3,4]と[1,2,2,3,4]だったら集合にしたとき同じ集合になっちゃう
28 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:53:10.391 ID:blku8lUx0
>>24
あっやべ全然考えてなかった
じゃソートになるのかー
21 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:51:21.877 ID:Z/Lm98+ga
別に順番とか関係なく
普通にforで1要素ずつ検証させればいいだけでは?
23 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:52:21.047 ID:AOcUGhuH0
>>21
それだと2回回す必要がある
22 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:51:37.965 ID:AOcUGhuH0
ソートか
25 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:52:46.627 ID:EatRAvJJ0
言語は?
29 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:53:10.591 ID:AOcUGhuH0
>>25
C#
26 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:52:58.733 ID:AOcUGhuH0
配列Aに対しての配列B
配列Bに対しての配列A
27 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:53:06.414 ID:ZM+zcM+N0
どう考えてもソートして比較するのが一番
30 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:55:00.255 ID:EatRAvJJ0
C#ならlinqで1行で出来るじゃん
33 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:57:44.495 ID:ERGH6nbe0
>>30
SequenceEqualで一撃だな
34 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:58:52.843 ID:ZM+zcM+N0
>>33
ソートもあるから
a.OrderBy(x=>x).SequenceEquals(b.OrderBy(x=>x))
だな
31 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:55:04.568 ID:PHzevNAGa
そんなに最適化する必要がある箇所なの?
32 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:56:36.587 ID:Q8Lemscxa
配列の中身が文字列や数字なら
そーとしてからJSON化して比較すれば
一個ずつ見なくても良さそう
35 名前:ひみつの名無しさん 投稿日時:2021/03/21(日) 16:59:48.313 ID:EatRAvJJ0
まず質問が抽象的すぎて分からん
アルゴリズム的な答えを聞きたいのか、単純にプログラムの処理速度を求めてるのか
前者はまず速度なりRASISに基づくなりどういうことを目的に確認したいのか言ってくれんとアルゴリズムすら答えようが無いし
もっと固めてから質問しないとどうしようもないよ

コメント

タイトルとURLをコピーしました