![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
C/C++, Java
Участник клуба
Регистрация: 28.03.2012
Сообщений: 1,680
|
![]()
Добрый день. Нужен совет опытных людей.
Ничего толкового в голову не идет... Нудна функция удаления элемента (по значению) одномерного массива (например из 2 1 3 4 3 6 3 2) исключить 2. Пытался создать вспомогательный массив для хранения, сдвигать значения в массиве.... какая-то бредятина, даже код не буду выкладывать... Даже не предполагал, что этот вопрос станет для меня актуальным... Алгоритм, кусок кода. Буду признателен за любую помощь ![]() ![]()
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости" Сложность - враг простоты и удобства! |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 03.12.2009
Сообщений: 1,013
|
![]()
Привет!
Вот мой мини набросок. Код:
Имитируем удаление тупо сдвигом и изменением перемнной которая содержит количество элементов в массиве - самый примитивный способ ![]() P.S. Или нужно именно с динамическим перераспределнием? Последний раз редактировалось Базиля; 17.06.2013 в 00:25. |
![]() |
![]() |
![]() |
#3 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]()
Модифицировал вариант Базили.
Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 03.12.2009
Сообщений: 1,013
|
![]()
Идея по преобразованию кода хороша !
Спасибо за изменения! ![]() Позвольте немного прокомментирую. Дело в том, что если мы произведем смещение, то начнем отставать на 1 элемент, что в дальнейшем нам не даст сместить элемент корректно (к примеру последовательность - 1 2 3 3 2 3. Предпоследняя 2 будет удалена, замена произойдет 3 на 3, но не 3 на 2 ![]() Конечно значение n изменится и мы не позволим себе тем самым обратиться к тем элементам, но сама задача, как таковая, не совсем до конца будет выполнена ![]() Ну это то что бросилось сейчас сразу в глаза. Спасибо! P.S. Код:
![]() Последний раз редактировалось Базиля; 17.06.2013 в 02:43. |
![]() |
![]() |
![]() |
#5 |
C/C++, Java
Участник клуба
Регистрация: 28.03.2012
Сообщений: 1,680
|
![]()
Вообще хотелось бы конечно.... И вообще хотелось бы еще сделать перегрузку данной функции, если есть варианты, тоже не откажусь
А вообще мне оба Ваши варианта нравятся...
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости" Сложность - враг простоты и удобства! Последний раз редактировалось Bugrimov; 17.06.2013 в 05:14. |
![]() |
![]() |
![]() |
#6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]() Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#7 |
C/C++, Java
Участник клуба
Регистрация: 28.03.2012
Сообщений: 1,680
|
![]()
BDA это именно то что нужно, а по поводу перегрузки сможете что-нибудь подсказать....
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости" Сложность - враг простоты и удобства! |
![]() |
![]() |
![]() |
#8 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]()
Чтобы перегрузить, нужно придумать, что перегружать.
Можно написать шаблон, чтобы функция работала для массивов, состоящих из любых типов. Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#9 |
C/C++, Java
Участник клуба
Регистрация: 28.03.2012
Сообщений: 1,680
|
![]()
BDA
Может передавать количество удаляемых элементов. Например удалять все 2 из массива и все 3. Как это можно реализовать? ![]() ![]()
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости" Сложность - враг простоты и удобства! |
![]() |
![]() |
![]() |
#10 | |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]() Код:
4 параметр - упорядоченные по возрастанию значения, которые нужно удалить из массива Цитата:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление элемента из массива, C#. | umpik | Помощь студентам | 0 | 31.05.2013 02:14 |
Удаление элемента массива | LiuLiuJons | Общие вопросы C/C++ | 6 | 07.03.2012 23:38 |
удаление элемента массива | Studentka_iz_ZP | Общие вопросы C/C++ | 2 | 02.10.2010 13:55 |
Удаление элемента из массива | prostac | Помощь студентам | 2 | 30.09.2010 11:14 |
Удаление элемента из массива | Ozerich | PHP | 10 | 14.02.2009 02:21 |