Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вставка нового элемента в массив, как дополнить код 
V
    Опции темы
drakon803
Дата 18.10.2009, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



Доброго времени суток !
Подскажите, как решить задачу по вставке элемента в массив?
Задача такая: Есть двусвязный список из 3-х элементов 5,6,7. 5-й элемент  содержит указатель на следующий,  6-й элемент, и на  предыдущий nill; 6-й на следующий, 7-й и предыдущий, 5-й;7-й на предыдущий, 6-й и на следующий nill.Задачу представляем в виде двумерного массива

Цитата

-1    0    1
 5    6    7
 1    2      -1

где  первая строка это указатели на предыдущие элементы массива, средняя-сами элементы, а нижняя-указатели на последующие элементы.
Моя программа выводит элементы этого массива  в порядке возрастания и убывания. Необходимо, чтобы в данный массив был вставлен новый элемент 10  после первого элемента и массив примет вид:

Цитата

-1     0    1    2
 5    10    6    7
 1     2    3      -1

 
Как это реализовать???

Вот код проги:
Код


package lab1;

public class CopyOflab11 {

    

        public static void main(String[] args) 
        {

        int [][] list = new int [3] [3];
        int x=0;
        
        int []xxx = new int [3];
        int []xx = new int [3];
        
        
        list [0][0]= -1;
        list [0][1]= 5;
        list [0][2]= 1;
        list [1][0]= 0;
        list [1][1]= 6;
        list [1][2]= 2;
        list [2][0]= 1;
        list [2][1]= 7;
        list [2][2]= -1;
        

        for(x=0;x<list[1].length;x++)
            if (list[x][2] != -1)
                xxx[x] = list[x][1];
                
        xxx[--x] = list[x][1];
                System.out.println("w= ");
        for(int w=0;w<xxx.length;w++)
                
            System.out.println(xxx[w]);
        
        
        
        
        for(x=2;x>=0;x--)
            if (list[x][1] != -1)
                xx[x] = list[x][1];
                
        xx[++x] = list[x][1];
                System.out.println("q= ");
        for(int q=2;q>=0;q--)
                
            System.out.println(xx[q]);
        
        
        }
}

        

Это сообщение отредактировал(а) powerOn - 23.10.2009, 22:28
PM MAIL   Вверх
dorogoyIV
Дата 18.10.2009, 16:28 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 3
Всего: 46



java это не basic
нет возможности вставить в масив
если нужно вставить в массив, то надо создать новый массив, потому, что выделена какая то память под масив.
сам не понял, что написал  smile 
PM MAIL   Вверх
Maksym
Дата 19.10.2009, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


.
***


Профиль
Группа: Участник Клуба
Сообщений: 1456
Регистрация: 19.8.2005
Где: Odessa, Black Sea

Репутация: 14
Всего: 62



Создавай новый массив и используй System.arraycopy().

Это сообщение отредактировал(а) Maksym - 19.10.2009, 19:17
PM MAIL   Вверх
drakon803
Дата 19.10.2009, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



Maksym

Сиба за  не настолько силен в Яве, чтобы все это реализовать  ;-(((
PM MAIL   Вверх
sergioK
Дата 19.10.2009, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 207
Регистрация: 15.2.2008

Репутация: нет
Всего: нет



Цитата(Maksym @ 19.10.2009,  19:13)
Создавай новый массив и используй System.arraycopy().


LinkList он для того и придуман , почитай Керниган Ричи ,  

Это сообщение отредактировал(а) sergioK - 19.10.2009, 21:02
PM MAIL   Вверх
Neox_GeForce
Дата 20.10.2009, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 14.11.2007
Где: Украина

Репутация: нет
Всего: нет



Может тебе нужно с помощью указателей ее решить? В джаве указателей нет.
Используй LinkedList

Это сообщение отредактировал(а) Neox_GeForce - 20.10.2009, 09:53


--------------------
user posted image
Челябинские программисты настолько суровы, что обходятся без компиляторов.
Челябинские программисты настолько суровы, что считают ассемблер недопустительной роскошью - они вручную магнетизируют участки жесткого диска.
PM MAIL ICQ   Вверх
drakon803
Дата 22.10.2009, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



Спасибо всем за советы и подсказки по данному вопросу!проблема решена!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0475 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.