Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Pr1M
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 47
1

Односвязный список, метод вставки по индексу

11.03.2014, 00:25. Просмотров 1775. Ответов 3
Метки нет (Все метки)

вот односвязный список с методами(добавления элементов в список, определения индекса и вставки элемента по индексу), проблема с 3 методом.
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
public class LinkedList {
    private Element first;
    private Element next;
 
    public LinkedList() {
        first = null;
        next = null;
    }
 
    public boolean isEmpty() {
        return first == null;
    }
        public int index(Element key){
        int i = 1;
        Element link = first;
        while(link.next != null){
            if (link==key)
                break;
            i++;
            link = link.next;
        }
        return i;
        public void pushNext(long Elem) {
        Element newLink = new Element(Elem);
        if (isEmpty())
            first = newLink;
        else {
            next.next = newLink;
            newLink.ssilka = next;
        }
        next = newLink;
    }
 
    public void pushIndex(Element key, int index){
        Element aa = elemIndex(index-1);
        Element link = elemIndex(index);
        aa.setPointer(key);
        key.setPointer(link);
        public void printList() {
        System.out.print("Список: ");
        Element link = first;
        while (link != null) {
            link.displayLink();
            link = link.next;
        }
        System.out.println("");
    }
 
 
    public static void main(String[] args) {
        LinkedList myList = new LinkedList();
        myList.pushNext(4);
        myList.pushNext(7);
        myList.pushNext(2);
        myList.pushNext(1);
                myList.pushIndex(3, 2);
        myList.printList();
        
 
 
class Element {
    public Element next;
    public long dData;
    public Element ssilka;
     public Element getPointer() {
          return next;
         }
    public void setPointer(Element next) {
          this.next = next;
         }
 
    public Element(long d) {
        dData = d;
    }
 
    public void displayLink() {
        System.out.print(dData + " ");
    }
 
}
Так вот проблемка собственно в том, что когда я в мэйне вызываю метод myList.pushIndex(2123, 2); что бы после элемента с идексом 2 вставить элемент 2123, у меня подчеркивает, что я не могу вызвать этот метод. Я уже задолбался, подскажите кто может.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2014, 00:25
Ответы с готовыми решениями:

Односвязный Список, метод поиска элементов
Создал односвязный список, добавляет элементы, удаляет. Нужно написать...

Односвязный список
Создал список. Каждый элемент содержит id и указатель на следующий элемент. Для...

Односвязный список
Доброго времени суток друзья.Нужна помощь по реализации метода по "вставки" в...

Односвязный список
Написал односвязный список. Хранит только первый элемент, "цеплять" следующие...

Линейный односвязный список
Надо разработать консольное приложение на Java Данные приложения – линейный...

3
turbanoff
Эксперт Java
4019 / 3754 / 741
Регистрация: 18.05.2010
Сообщений: 9,329
Записей в блоге: 11
Завершенные тесты: 1
11.03.2014, 10:58 2
Pr1M, Что-то у вас с фигурными скобками напутано. Просмотрите код, чтобы они правильно стояли.
0
Pr1M
0 / 0 / 0
Регистрация: 19.02.2014
Сообщений: 47
12.03.2014, 10:57  [ТС] 3
Спасибо что заметил, со скобками всё нормально в коде, сюда с ошибкой перенёс. Но всё еще не знаю где ключевая ошибка.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
...public void pushIndex(Element key, int index){
        Element aa = elemIndex(index-1);
        Element link = elemIndex(index);
        aa.setPointer(key);
        key.setPointer(link);
}
        public void printList() {
        System.out.print("Список: ");
        Element link = first;
        while (link != null) {
            link.displayLink();
            link = link.next;
        }
        System.out.println("");
    }...
Добавлено через 20 часов 15 минут
up.
0
turbanoff
Эксперт Java
4019 / 3754 / 741
Регистрация: 18.05.2010
Сообщений: 9,329
Записей в блоге: 11
Завершенные тесты: 1
12.03.2014, 11:35 4
Pr1M, Где заканчивается метод isEmpty() в приведённом выше коде?
Вы не могли бы привести полный настоящий код, ваших классов? А не эти куски, в которых напутаны скобки.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2014, 11:35

Односвязный список двусвязных списков
Программа симулирует создание поездов. Каждый поезд состоит из тягача и...

Задача Иосифа Флавия, односвязный список
Всем привет. Никак не могу разобраться в чем ошибка. Собственно вот часть...

Односвязный список: удаление елемента из него
Необходимо удалить элемент из списка по значению, public class Node { ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru