2013-05-25 2 views
1

Могу ли я иметь такую ​​структуру в связанном списке?Может ли узел в связанном списке иметь динамический массив?

public class myLinkedList{ 
myLinkedList parent; 
String data; 
myLinkedList[] next; 
} 

Проблема в том, что этот узел может иметь или не иметь несколько соединений.

Спасибо!

+2

Да, вы можете. Массив 'next' может иметь несколько значений, в том числе none. Вопрос только в этом? – acdcjunior

+0

Да. Я знаю, что узлы связанного списка сохраняются в куче. Но я не был уверен, что у уже созданного узла может быть больше выделенных мест памяти. –

+0

Вы можете «переделать» массив в любое время, просто назначив новый: 'next = new myLinkedList [99]; next = new myLinkedList [1]; next = new myLinkedList [30]; '. Имейте в виду, что мы каждый раз назначаем новый массив, не расширяя его размер. Если вам нужен динамический размер, вы должны пойти в коллекцию как 'ArrayList'. – acdcjunior

ответ

3

Язык позволяет вашему классу хранить вашу ссылку next в массив mylinkedlist.

Однако связанный список является линейным. Ваша структура может быть tree или graph.

+0

Спасибо. Я понял, что я здесь делаю. Я изучал много Linked List, и я продолжаю думать в этих терминах. Ты прав. Это проблема графа, над которой я работаю. –

+0

Хммм, кто-то без заголовка. Не знаю, почему. –

1

Одноуровневые списки, по определению, имеют одно соединение (указатель на следующий узел). У двойных ссылок есть два (один указывает на предыдущий узел, другой указывает на следующий узел). Если вы собираетесь иметь несколько соединений, вы должны использовать дерево или график.

Смежные вопросы