|
|
|
Рефакторинг
|
|||
|---|---|---|---|
|
#18+
eldarkaaМожет легче перегнать каждый список в отдельное Множество?Если Вам нужно выполнить пересечение списков, тогда нет необходимости перегонять все в отдельное множество: Код: java 1. 2. 3. 4. 5. 6. И результат: rzs = [[150, 151, 167, 153, 154, 155, 156, 157, 158, 159], [161, 162, 167, 164, 165, 166, 263, 168, 169, 170], [172, 230, 59, 175, 176, 177, 274, 179, 180, 181], [183, 241, 58, 186, 187, 11, 285, 190, 191, 192], [194, 252, 57, 197, 198, 11, 296, 201, 202, 203], [205, 263, 56, 208, 209, 11, 307, 212, 213, 214], [216, 217, 55, 219, 220, 11, 222, 223, 224, 225], [227, 228, 54, 230, 231, 11, 233, 234, 235, 236], [238, 239, 53, 241, 242, 11, 244, 245, 246, 247], [249, 250, 52, 252, 253, 22, 255, 256, 257, 258], [260, 261, 51, 263, 264, 22, 266, 267, 268, 269], [271, 272, 50, 274, 275, 22, 277, 278, 279, 280], [282, 283, 49, 285, 286, 22, 288, 289, 290, 291], [293, 294, 295, 296, 297, 22, 299, 300, 301, 302], [304, 305, 306, 307, 308, 33, 310, 311, 312, 313], [315, 316, 317, 318, 319, 33, 321, 322, 323, 324], [189, 228, 132, 33], [186, 187, 189, 33], [197, 198, 189, 44], [208, 209, 189, 200, 44], [219, 220, 156], [230, 231, 156], [241, 242], [252, 253], [263, 264], [274, 275], [285, 286], [296, 297], [307, 308], [318, 319]] ∩ asu = [11, 11, 11, 11, 11, 11, 11, 22, 22, 22, 22, 22, 33, 33, 33, 33, 44, 44, 44, 55, 55, 230, 241, 252, 263, 274, 285, 296, 307, 318] = [[], [263], [230, 274], [241, 11, 285], [252, 11, 296], [263, 11, 307], [55, 11], [230, 11], [241, 11], [252, 22], [263, 22], [274, 22], [285, 22], [296, 22], [307, 33], [318, 33], [33], [33], [44], [44], [], [230], [241], [252], [263], [274], [285], [296], [307], [318]] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 19:23:41 |
|
||
|
Рефакторинг
|
|||
|---|---|---|---|
|
#18+
Usman, спасибо за ответ. Но речь немного не о том. Нормально ли искать элемент по всем строчкам и по всем столбцам? Просто если будет для каждого элемента из списка списков, который содержит 2000 строк и 10 столбцов, проходить еще и вектор(в нашем случае список Asu) ради определения совпадения. Это слишком накладно. Я Множества в качестве примера привел, то что в них легко можно найти одинаковые элементы. Если содержится строка(множества) в другом множестве, то искать элемент. Хотя и так не получится, готовой реализации нету, в которой проверяется не все множество, а его элементы, а если делать свою, то получится тоже банальное сравнение каждого с каждым. + С множествами не особо поработаешь. Удалит дубликаты, да и единственное полезное что может сделать - найти замены(элементы, изделия) который не содержатся ни в одном из списков. -------------- Иными словами. Есть замена циклу O(N*M*K) ? (а то это ультра не круто) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 21:16:54 |
|
||
|
Рефакторинг
|
|||
|---|---|---|---|
|
#18+
eldarkaaЕсть замена циклу O(N*M*K) ? (а то это ультра не круто)Нужно индексировать значения ячеек и их отсортированных позиций в виде дерева (дополнительная структура): Код: java 1. Индексировать при считывании из файла (импорт). Так мы сможем быстро найти нужный компонент и его расположение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2013, 21:40:13 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38369406&tid=2128794]: |
0ms |
get settings: |
14ms |
get forum list: |
22ms |
check forum access: |
7ms |
check topic access: |
7ms |
track hit: |
48ms |
get topic data: |
17ms |
get forum data: |
4ms |
get page messages: |
70ms |
get tp. blocked users: |
2ms |
| others: | 291ms |
| total: | 482ms |

| 0 / 0 |
