|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.03.2014, 22:16 | #1 |
Пользователь
Регистрация: 21.11.2013
Сообщений: 45
|
Сдвиг элементов массива <->
Ребята прошу сильно не пинать, просто решил переспросить лишний раз...
Код:
Потом мне к примеру нужно удалить второй элемент в RecRec и остальные сдвинуть влево без потери данных... Как это правильно сделать ? Даж и пива не пил, но чего-то не могу сообразить. Сорри перед сообществом, знаю тема избитая. |
21.03.2014, 22:25 | #2 |
Delphi 10 Seattle
Пользователь
Регистрация: 01.11.2010
Сообщений: 90
|
Вот, посмотри
|
21.03.2014, 22:35 | #3 |
Пользователь
Регистрация: 21.11.2013
Сообщений: 45
|
Код:
Вопрос не снят... |
21.03.2014, 22:48 | #4 |
Заблокирован
Регистрация: 02.03.2014
Сообщений: 439
|
z768 В процитированном примере ничего не уничтожается. Удаляется ссылка, не более.
|
21.03.2014, 22:54 | #5 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
21.03.2014, 23:19 | #6 |
Пользователь
Регистрация: 21.11.2013
Сообщений: 45
|
так вот без динамических массивов в структуре никак не обойтись.
с добавлением наверное проще, потому как новая структура будет добавлена в конец массива... SetLength(xx, Length(xx) + 1) В принципе мне мемо и не нужно, а так все понятно. Спасибо за просвещение. Последний раз редактировалось z768; 21.03.2014 в 23:22. |
21.03.2014, 23:59 | #7 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Memo для того, что бы убедиться в корректности кода
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
22.03.2014, 10:30 | #8 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,882
|
Я бы подобную задачу - хранилище со сжатием места при удалении (без оглядки на другие функции хранилища) решал через динамическое программирование - одно-/дву- направленный/связный список. Удаление в оном - всего лишь перестановка указателей на соседей.
Если важен ещё и поиск (индексация) , в плане скорости, то надо ещё более усложнять работу хранилища, HashTable/Map/Dictionary и т.д. |
25.03.2014, 16:32 | #9 |
Пользователь
Регистрация: 21.11.2013
Сообщений: 45
|
И еще вопрос вдогонку...
проблему решил вот так Код:
Насколько это правильно я не знаю, потому и задаю вопрос сообществу, с массивами практически не сталкивался, рыл гугль... Но понять толком ничего и не смог. Последний раз редактировалось z768; 25.03.2014 в 16:39. |
25.03.2014, 17:50 | #10 |
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сдвиг элементов массива (C++) | Nomicos | Помощь студентам | 4 | 24.01.2013 16:16 |
Сдвиг элементов массива и вопрос о strcpy | neonakaneya | Общие вопросы C/C++ | 9 | 09.01.2012 00:27 |
циклический сдвиг элементов массива | Carter | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 19.12.2011 19:54 |
Сдвиг элементов массива на 1 влево. Вывести матрицу в Memo | Abrokadawr | Помощь студентам | 3 | 04.11.2011 23:13 |
Удаление элементов массива и сдвиг | Alex11223 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 12.01.2011 20:01 |