Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
1 / 1 / 0
Регистрация: 21.04.2018
Сообщений: 41

Реализация своего ЛинкЛиста

04.11.2019, 18:15. Показов 771. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят дали нам задачку на реализацию ЛинкЛиста, и завис я теперь на реализации метода адд по индексу. Плюс небольшой нюанс, у нас однонаправленный ЛинкЛист. Кто подскажет, то вроде посты читаю, пытаюсь разобраться в методе, а такое ощущение что смотрю в код а фиху фиг.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 @Override
    public boolean add(int index, E element) {
        if (index < 0 || index > size) {
            return false;
        }
 
        if (index == size) {
            add(element);
            return true;
        }
 
        if (index == 0) {
            Node<E> node = new Node<>(element, head);
            head = node;
            size++;
            return true;
        }
 
        Node<E> nodeTemp = getNode(index);
 
        Node<E> node = new Node<>(element, nodeTemp);
 
        size++;
        return true;
    }
 
    //Написал свой приватный метод хотел тем самым получить элемент который 
    //передается по индексу и по разному пробовал перенаправить ссылки а ничего не выходит
 
    private Node<E> getNode(int index) {
        Node<E> nodeTemp = head;
        for (int i = 0; i < index; i++) {
            nodeTemp = nodeTemp.next;
        }
        return nodeTemp;
    }
Добавлено через 42 минуты
немного переписал получение объекта, активно зацикливается
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 @Override
    public boolean add(int index, E element) {
        if (index < 0 || index > size) {
            return false;
        }
 
        if (index == size) {
            add(element);
            return true;
        }
 
        if (index == 0) {
            Node<E> node = new Node<>(element, head);
            head = node;
            size++;
            return true;
        }
 
        Node<E> nodeTemp = getNode(index);
        Node<E> node = new Node<>(element, nodeTemp);
        
        nodeTemp.next = node;
        node.next = node;
        size++;
 
        return true;
    }
 
    private Node<E> getNode(int index) {
        Node<E> nodeTemp = head;
        int i = 0;
 
        while (i < index) {
            nodeTemp = nodeTemp.next;
            i++;
        }
 
        return nodeTemp;
    }
Добавлено через 38 минут
Прогресс есть, только происходит замена елемнта а не сдвиг всех элементов.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 public boolean add(int index, E element) {
        if (index < 0 || index > size) {
            return false;
        }
 
//        if (index == size) {
//            add(element);
//            return true;
//        }
//
//        if (index == 0) {
//            Node<E> node = new Node<>(element, head);
//            head = node;
//            size++;
//            return true;
//        }
 
        Node<E> nodeTemp = getNode(index);
        Node<E> node = new Node<>(element, nodeTemp);
 
        nodeTemp.element = node.element;
        node.element = node.next.element;
        size++;
 
        return true;
    }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.11.2019, 18:15
Ответы с готовыми решениями:

Реализация своего ArrayList
Привет. Проблема следующая: надо реализовать свой вариант ArrayList. Столкнулся с проблемой следующего характера - в мою коллекцию я...

Реализация своего ArrayList
Парни всем привет! Решаю задачу в написании своего ArrayList для учебы. Посмотрите пожалуйста и подскажите где и в каких методах у меня...

Реализация своего Iterator<T>
у меня есть свой односвязный список, если задать при описании итератора параметр типа Node что-то типа: public class...

7
 Аватар для Aviz__
2750 / 2058 / 508
Регистрация: 17.02.2014
Сообщений: 9,486
04.11.2019, 19:42
Цитата Сообщение от boobik Посмотреть сообщение
Кто подскажет
поиск тут, или подгляди реализацию у Оракла)).

Не по теме:

походу, Бро, программирование не твое... пока не поздно, займись, скажем дорогими тачками.

0
1 / 1 / 0
Регистрация: 21.04.2018
Сообщений: 41
04.11.2019, 19:51  [ТС]
Бро интенсивы не всегда даются мне легко особенно когда их пытаешся совместить с работой и еще попутно учебой ну и обязательно семьей.
0
04.11.2019, 19:56

Не по теме:

boobik, вне всяких сомнений, у тебя самая трудная ситуация!

0
1 / 1 / 0
Регистрация: 21.04.2018
Сообщений: 41
04.11.2019, 20:01  [ТС]
Aviz__, Я знаюю что ты норм шариш но я раньше что-то не замечал чтоб ты так глумился
0
 Аватар для Aviz__
2750 / 2058 / 508
Регистрация: 17.02.2014
Сообщений: 9,486
04.11.2019, 20:09

Не по теме:

Цитата Сообщение от boobik Посмотреть сообщение
глумился
еще думал, приписать, что без глума, честно!!! просто, вот ты такие привел жизненные сложности, еще чел в германии еле тянет... кому тяжелее?



Добавлено через 2 минуты

Не по теме:

boobik, а во, прочти, каково людям с аутизмом пахать https://habr.com/ru/company/itsumma/blog/473158/

0
1 / 1 / 0
Регистрация: 21.04.2018
Сообщений: 41
04.11.2019, 20:27  [ТС]
Aviz__, Слушай бро, я разных людей в жизни видел и знаю как оно может быть. Если ты устал отвечать на вопросы таких недоновичков как я, то просто пройди мимо и все. Первым делом что я делю, это ищу ответы на форуме, после я гуглю и залажу в ютубчик, и если мне тяжело понять только после я задаю свой вопрос сюда и показываю свой еще далекий от совершенства код.

Добавлено через 3 минуты
Нас на курсах сразу предупредили, что задание не легкое и прийдется много понять и изучить. Я не жаловался а помощи просил.
0
 Аватар для Aviz__
2750 / 2058 / 508
Регистрация: 17.02.2014
Сообщений: 9,486
04.11.2019, 21:10

Не по теме:

boobik, не хотел тебя обидеть, Бро!

Цитата Сообщение от boobik Посмотреть сообщение
недоновичков
я так не считаю. я отвечаю не для вас, а для себя.


твоя задача не сложная, но требует внимательности и аккуратного кода. тут, на ветке Java SЕ, твоя задача решена сотни 2 раз!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.11.2019, 21:10
Помогаю со студенческими работами здесь

Реализация своего дефрагментатора
Привет всем! Подскажите, пожалуйста, возможно ли средствами .NET (C# или VB) сделать свой дефрагментатор? То есть, получение карты...

Реализация команд для своего командного интерпретатора
namespace Commands { class Program { static void Main() { while (true) ...

Реализация своего std::vector c аллокатором памяти
Приветствую всех. Пытаюсь реализовать свой std::vector с аллокатором памяти и всеми конструкторами которые обозначены на cppreference, но...

Реализация stl-ной queue с объектами своего класса, вылетает программа
не могу разобраться, в чем проблема. необходимо реализовать очередь и запихивать туда объекты из своего класса, дело в том, что при...

Передача своего своего значения в HIWORD и LWORD параметра WPARAM, реально?
Как вы знаете когда идёт передача сообщения с ним уходят параметры wParam и lParam Так вот мне нужно передать два интовых значения - одно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru