Название: Пример удаления повторяющихся элементов в QListWidget Отправлено: merke от Август 24, 2010, 09:36 Код: for (int i = 0; i< ui->listWidget->count(); i++) Возможно реализация не самая эффективная. Жду более оптимизированных вариантов. Название: Re: Пример удаления повторяющихся элементо Отправлено: Пантер от Август 24, 2010, 16:53 Код Не сильно вдавался, но так лучше. Название: Re: Пример удаления повторяющихся элементов в QListWidget Отправлено: SABROG от Август 24, 2010, 20:24 А это точно лучше, сравнивать итем самим с собою?
Код
Название: Re: Пример удаления повторяющихся элементов в QListWidget Отправлено: kobra от Август 24, 2010, 23:21 этот пример дает O(N2). Второй способ что здесь навели немного лучше если не считать маленькой опечатки. Если можна список посортировать то тогда удаления елементов можна сделать за один проход.
Название: Re: Пример удаления повторяющихся элементов в QListWidget Отправлено: Пантер от Август 25, 2010, 06:25 SABROG, очепятался. Сейчас подправлю.
Название: Re: Пример удаления повторяющихся элементов в QListWidget Отправлено: SABROG от Август 25, 2010, 08:14 На самом деле все как-то не так. Вместо того, чтобы удалять лишние элементы из списка, можно делать проверку есть ли такой уже и просто не добавлять дубликат. Но больше всего мне не нравится привязка всего к одной роли Qt::DisplayRole, когда их там может быть любое количество.
Название: Re: Пример удаления повторяющихся элементов в QListWidget Отправлено: Пантер от Август 25, 2010, 11:22 На самом деле все как-то не так. Вместо того, чтобы удалять лишние элементы из списка, можно делать проверку есть ли такой уже и просто не добавлять дубликат. Вопрос был в удалении дубликатов.Название: Re: Пример удаления повторяющихся элементов в QListWidget Отправлено: ритт от Август 25, 2010, 18:39 > Но больше всего мне не нравится привязка всего к одной роли Qt::DisplayRole, когда их там может быть любое количество.
мне это тоже сразу не понравилось, но решение всё-равно кривое - не стал занудствовать) Название: Re: Пример удаления повторяющихся элементов в QListWidget Отправлено: Omg от Январь 31, 2011, 19:59 Возможно, вместо второго цикла поставить проверку по списку листа и такой же каунт.
Смотрится лучше, но быстрей ли - не знаю. |