メイン コーダーズルーム【スクリプト系】 配列の重複を削除 | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
multi | Åê¹ÆNo.22402 投稿日時: 2005-12-22 22:18 |
新米 居住地: 投稿: 8
使用環境:
WinXP,Flash 8 |
配列の重複を削除 配列の重複する項目を削除する方法に悩んでいます。
元の配列から新しい配列を作るようにすればいいのではと漠然とイメージはできるのですが、具体的方法が思い浮かばず悩んでいます。 イメージとしては var array1=['a','d','c','a','b','b','c','a','b','c']; という配列があるとしたら、 array2=['a','b','c','d']; という重複した物を削除した配列にしたいのです。 よろしくお願いします。 |
野中文雄 | Åê¹ÆNo.22403 投稿日時: 2005-12-22 22:43 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: 配列の重複を削除 エレメントがさまざまな値を取るなら、ひとつひとつ重複がないか調べたうえで、新たな配列に追加していくかたちになるでしょう。
引用: multiさんは書きました: ただ、単純な文字列しか含まないのであれば、簡便な方法があります。 引用: イメージとしては
|
anko | Åê¹ÆNo.22405 投稿日時: 2005-12-23 13:29 |
半人前 居住地: 投稿: 38
使用環境:
MAC_G4 FLASH5,FLASH MX2004 |
Re: 配列の重複を削除 そうそう、これ。以前自分も悩んだことありました。
データベースのand検索とor検索。 1?10個のtextの中で、Aという文字列が含まれているのが [1,2,3,5,8,9]番 Bという文字列が含まれているのが [1,2,3,6,7,9]番 二つをくっつけて[1,2,3,5,8,9,1,2,3,6,7,9] sortして[1,1,2,2,3,3,5,6,7,8,9,9] これを最初から、その番目とその番目+1を比較して 違っていれば、その番目の数を別配列に追加する [1,2,3,5,6,7,8,9] =or 検索 同じであれば、その番目の数を別配列に追加する [1,2,3,9] =and 検索 |
Fla4man | Åê¹ÆNo.22406 投稿日時: 2005-12-23 16:51 |
職人 居住地: かまくら 投稿: 517
使用環境:
WinMe,Win2000, Flash4,アズさん,大仏、delphi |
Re: 配列の重複を削除 この方法は一見スマートなんですが
最初にソートかける行為自体コストがかかっているので 先頭文字から順番に比較文字として取り出し 最後までサーチしながら削除するのに比べて メリットがないのでは?
|
multi | Åê¹ÆNo.22408 投稿日時: 2005-12-23 19:15 |
新米 居住地: 投稿: 8
使用環境:
WinXP,Flash 8 |
Re: 配列の重複を削除 単純そうでいて複雑なのですね。
野中さんのサンプルをヒントに、 お陰さまで、なんとか対処することができました。 どうもありがとうございました! |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |