![]() |
|
||||||||||
|
|||||
|
Здравствуйте. Не подкинете ли алгоритм сравнения двух массивов?
Т.е Есть массив А и Б. Сравниваем. Получаем массив В который содержит элементы из А не входящия в Б. Весь гугл перерыл |
|
|||||
|
немного сыро... возвращает уникальные элементы первого массива не входящие во второй.
|
|
|||||
|
Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
|
var a:Array = ['a','b','c','d']; var b:Array = ['b','d']; var c:Array = getSubtraction( a, b ); trace( c ); function getSubtraction( arrA:Array, arrB:Array ):Array { var arrOut:Array = []; var _isFound:Boolean; var i:int; var j:int; var li:int = arrA.length; var lj:int = arrB.length; for( i=0; i < li; i+=1 ) { _isFound = false; for( j=0; j < lj; j+=1 ) { if( arrA[i] === arrB[j] ) { _isFound = true; break; } } if( !_isFound ) { arrOut.push( arrA[i] ); } } return arrOut; } Последний раз редактировалось i.o.; 16.06.2010 в 14:14. |
|
|||||
|
Регистрация: Apr 2008
Сообщений: 79
|
Последний раз редактировалось PgeorgyV; 16.06.2010 в 14:09. |
|
|||||
|
Регистрация: Mar 2008
Сообщений: 259
|
Цитата:
А этот код никак не поддержит дублирующиеся элементы, а если дублирующиеся элементы не нужны, то тогда лучше объект использовать - поиск по ключу наамного быстрее |
|
|||||
|
Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
|
Цитата:
|
|
|||||
|
Регистрация: Mar 2008
Сообщений: 259
|
Ну тогда лучше не массивы, а объекты использовать...
|
|
|||||
|
|
|
|||||
|
Спасибо. Все работает. Да именно не дублирующиеся. Использую алгоритм партизана.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 14:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|