|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
|
-V- |
|
|||
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 24.3.2005 Репутация: -1 Всего: 0 |
Постановка задачи:
Существует массив записей string a[0] = "петя"; a[1] = "маша"; a[2] = "петя"; a[3] = "сырожа"; a[4] = "вова"; ... a[n] = "cdefghjklmnpoq"; как видно некоторые записи в разных елементах совпадают... Вопрос: Как на PHP написать скрипт очистки совпадений в массиве ... т.е. чтобы например запись "петя" не повторялась, а была записана только в первый елемент массива, со здвигом всех остальных елементов. ??? П.С. Если до обработки все данные в массиве равны "петя" то в массиве остаётся одна запись Благодарности Спасибо огромное за помощь Это сообщение отредактировал(а) -V- - 26.3.2005, 19:58 |
|||
|
||||
Irokez |
|
|||
индеец Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 22 Всего: 53 |
array_unique()
|
|||
|
||||
-V- |
|
|||
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 24.3.2005 Репутация: -1 Всего: 0 |
Ты что серьёзно одной функией????? ОТЭТО Я ТУПОЙ!!!!
Спасибо! |
|||
|
||||
VoAnt |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 209 Регистрация: 9.4.2004 Где: Украина г. Киев Репутация: -1 Всего: 2 |
Так, есть проблеммы..
Дело в том что унификация через функцию, не сдвигает массив .. т.е. кол-во елементов остаётся прежним! А НУЖНО ЧТОБ унификация была не только совпадений но и уменьшение размера массива.. Я пытался делать через if .. не рпботает .. посмотрите код в чем ошибка?
Это сообщение отредактировал(а) VoAnt - 27.3.2005, 02:54 |
|||
|
||||
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
|
|||
|
||||
Gold Dragon |
|
|||
Призрачный Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 10 Всего: 71 |
Я не супер в PHP, но может так
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
VoAnt |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 209 Регистрация: 9.4.2004 Где: Украина г. Киев Репутация: -1 Всего: 2 |
Cупер! Всё работает 2Opr.
|
|||
|
||||
IZ@TOP |
|
|||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
А не проще:
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: 24 Всего: 55 |
IZ@TOP
чем проще чем у меня? так же 2 функции )) |
|||
|
||||
Gold Dragon |
|
|||
Призрачный Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 10 Всего: 71 |
IZ@TOP
а что получается ? -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
IZ@TOP |
|
|||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Opr, у тебя лишняя переменная задейстована Я их экономлю
Добавлено @ 18:05 Red Dragon, а что? нет? Добавлено @ 18:07 А вообще, если на то пошло, то лучше при получении данных заносить не как значения, а как ключи. Соответственно так как идентичных ключей не будет, мы получим уникальный набор значений. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
IZ@TOP |
|
|||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Да, и вариант с ключами работает в три раза быстрее чем при использовании array_unique.
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
Irokez |
|
|||
индеец Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 22 Всего: 53 |
IZ@TOP как проверял?
|
|||
|
||||
IZ@TOP |
|
||||||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Irokez так:
Добавлено @ 18:28 И если массив увеличить раза в три-четыре, производительность вырастет в пять раз. Добавлено @ 18:29 А если еще поменять это
на это
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
||||||
|
|||||||
Irokez |
|
|||
индеец Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 22 Всего: 53 |
ну а если поменять оба варианта местами, то первое время будет также меньше второго
|
|||
|
||||
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |