powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Рекурсия
18 сообщений из 43, страница 2 из 2
Рекурсия
    #39690334
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
shaden,
я вот сама написала
Код: 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.
package treeadil;

import java.util.ArrayList;
import java.util.List;

public class Node<T>{
    private T data = null;
    private List<Node> children = new ArrayList<>();
    private Node parent = null;

    public Node(T data) {
        this.data = data;
    }

    public void addChild(Node child) { // как здесь инициализацию сделать
        child.setParent(this);
        this.children.add(child);
    }

    public void addChild(T data) {
        Node<T> newChild = new Node<>(data);
        newChild.setParent(this);
        children.add(newChild);
    }

    public void addChildren(List<Node> children) {
        for(Node t : children) {
            t.setParent(this);
        }
        this.children.addAll(children);
    }

    public List<Node> getChildren() {
        return children;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }
...
Рейтинг: 0 / 0
Рекурсия
    #39690338
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nastyaa,

точнее с однокурсников сидим и делаем через его ноут
...
Рейтинг: 0 / 0
Рекурсия
    #39690461
xds
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xds
Гость
nastyaanastyaa,

точнее с однокурсников сидим и делаем через его ноут

А может вы будете вести свои проект(ы) на github - заодно еще и git освоите
...
Рейтинг: 0 / 0
Рекурсия
    #39690630
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaashaden,
я вот сама написала
Код: 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.
package treeadil;

import java.util.ArrayList;
import java.util.List;

public class Node<T>{
    private T data = null;
    private List<Node> children = new ArrayList<>();
    private Node parent = null;

    public Node(T data) {
        this.data = data;
    }

    public void addChild(Node child) { // как здесь инициализацию сделать
        child.setParent(this);
        this.children.add(child);
    }

    public void addChild(T data) {
        Node<T> newChild = new Node<>(data);
        newChild.setParent(this);
        children.add(newChild);
    }

    public void addChildren(List<Node> children) {
        for(Node t : children) {
            t.setParent(this);
        }
        this.children.addAll(children);
    }

    public List<Node> getChildren() {
        return children;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }



Как вы там пишите? У вас же ошибки синтаксиса - я вот к примеру setParent метода не вижу

P.S. Заведите гитхаб действительно
...
Рейтинг: 0 / 0
Рекурсия
    #39690703
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xdsnastyaanastyaa,

точнее с однокурсников сидим и делаем через его ноут

А может вы будете вести свои проект(ы) на github - заодно еще и git освоите

+1

На самом деле данная задача настолько классическая, что грех не имплементировать на гитхабе. Я собственно на, что и купился помочь "Насте с другом" так как из последних, наверно, интервью штук 50 я не припомню, чтоб не спросили как распечатать дерево . Даже помнится лет шесть назад в Гугле спрашивали - я мыслено поржал и написал
...
Рейтинг: 0 / 0
Рекурсия
    #39690727
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nastyaaточнее с однокурсников сидим и делаем через его ноутзначит не так всё плохо в группе...
...
Рейтинг: 0 / 0
Рекурсия
    #39690749
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяnastyaaточнее с однокурсников сидим и делаем через его ноутзначит не так всё плохо в группе...

На самом деле, чем девушка больше косит под "блондинко" тем внешние данные у нее потрясающие годы проведенные в ИТ научили меня ценить человеческий материал

Жизнь среди коллег-батонов скучна и однообразна бывают исключения когда редкая птаха залетит в опен спейс и носится как "по сараю воробей"

Прямо как четвертое действие в чеховском "Дяде Ване"

авторПрежде и я всякого чудака считал больным, ненормальным, а теперь я такого мнения, что нормальное состояние человека — это быть чудаком.
...
Рейтинг: 0 / 0
Рекурсия
    #39691428
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergunka,

нет, просто они сам не смог сделать, и меня просил помочь сделать. Просто я что то у них прошу, они всегда отмазываются. А когда у них что то не получаются сразу же ко мне идут. Да знаю местами глуплю, но поймите я постепенно все понимаю, не надо думать обо мне плохо
...
Рейтинг: 0 / 0
Рекурсия
    #39691585
shaden
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообще, это нормальный подход: взять ник девочки и писать тексты вида: "мимими-сюсюсю, памагите бландиначке позязя, аа?"
Кто-то полюбому поведется и сделает - у чувака курсовой в кармане. Дальше так же и диплом.
И на работу даже возьмут, щас на джавистов и сочувствующих им большой спрос.
...
Рейтинг: 0 / 0
Рекурсия
    #39691593
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
shaden,

я давно закончила учебу(
просто записали родители на курсы
...
Рейтинг: 0 / 0
Рекурсия
    #39691594
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
shaden,
не подскажите почему у меня ошибка
http://www.sql.ru/forum/1301394/pochemu-u-menya-vyvodit-oshibku
...
Рейтинг: 0 / 0
Рекурсия
    #39691595
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nastyaa,
правильный ли код я написала?
Код: 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.
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;
import javax.swing.tree.TreeNode;


public class TreePrint {
	
    public static void main(String[] args) {
        
        Tree<String> rootFolder = new Tree<>("RootFolder"); 
        
        Node<String> video = new Node<>("Video"); 
        Node<String> music = new Node<>("Music"); 
        Node<String> picture = new Node<>("Picture");
        
        video.addChild("Terminator");
        video.addChild("Die Hard");
        video.addChild("Rocky");
        music.addChild("Eminem");
        picture.addChild("Picasso");
        
        
        

    
        
        
        private static <T> void printCatalog() {
		
		 printNode(rootFolder.getRoot());
		 List<Node<T>> kids = rootFolder.iterate();
		 printTree(kids);

	}

	private static <T> void printTree(List<Node<T>> kids) {
		 if (kids.isEmpty()) return;
		 for (Node<T> kid:kids) {
			printNode(kid);
			printTree(kid.getChildren());
		 }
		
	}

	private static <T> void printNode(Node<T> kid) {
		 System.out.println(kid.getData());
		
	}
      

		
	}
}
...
Рейтинг: 0 / 0
Рекурсия
    #39691728
shaden
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
nastyaa,

Подскажу.
По ставке 20000 рублей за рабочий день.
...
Рейтинг: 0 / 0
Рекурсия
    #39691729
Фотография Valentin Kolesnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shadennastyaa,

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

Я подскажу бесплатно.

С уважением, Валентин
...
Рейтинг: 0 / 0
Рекурсия
    #39691765
Фотография Valentin Kolesnikov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот такое решение:

Код: 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.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
package tree;

import java.util.List;

import tree.Tree.Node;

public class TreePrint {

    public static void main(String[] args) {

        Tree<String> rootFolder = new Tree<>("RootFolder");

        Node<String> video = new Node<>("Video", null);
        Node<String> music = new Node<>("Music", null);
        Node<String> picture = new Node<>("Picture", null);
        rootFolder.add(video);
        rootFolder.add(music);
        rootFolder.add(picture);

        video.add(new Node<>("Terminator", video));
        video.add(new Node<>("Die Hard", video));
        video.add(new Node<>("Rocky", video));
        music.add(new Node<>("Eminem", music));
        picture.add(new Node<>("Picasso", picture));

        printCatalog(rootFolder);
    }

    private static <T> void printCatalog(Tree<T> tree) {
        printNode(tree.getNode());
        List<Node<T>> kids = tree.iterate();
        printTree(kids);

    }

    private static <T> void printTree(List<Node<T>> kids) {
        if (kids.isEmpty()) {
            return;
        }
        for (Node<T> kid : kids) {
            printNode(kid);
            printTree(kid.iterate());
        }
    }

    private static <T> void printNode(Node<T> kid) {
        System.out.println(kid.getData());

    }
}

package tree;

import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;

public class Tree<T> {
    private Node<T> root;

    public Tree(T rootData) {
        root = new Node<T>(rootData, null);
        root.data = rootData;
        root.children = new ArrayList<Node<T>>();
    }

    public static class Node<T> {
        private T data;
        private Node<T> parent;
        private List<Node<T>> children;

        public Node(T data, Node<T> parent) {
            this.data = data;
            this.parent = parent;
            this.children = new ArrayList<Node<T>>();
        }

        public void add(Node<T> node) {
            children.add(node);
        }

        public T getData() {
            return data;
        }

        public List<Node<T>> iterate() {
            return children;
        }

        public Node<T> getRoot() {
            if (parent == null) {
                return null;
            }
            Node<T> localParent = parent;
            while (localParent.parent != null) {
                localParent = parent.parent;
            }
            return localParent;
        }

    }

    public Node<T> getNode() {
        return root;
    }

    public List<Node<T>> iterate() {
        return root.children;
    }

    public boolean remove(Node<T> node) {
        return root.children.remove(node);
    }

    public void add(Node<T> node) {
        root.children.add(node);
    }

    public List<Node<T>> findByName(final String name) {
        final List<Node<T>> result = new ArrayList<>();
        final Queue<Node<T>> allFiles = new LinkedList<>();
        allFiles.add(getNode());
        while (!allFiles.isEmpty()) {
            final Node<T> localEntry = allFiles.poll();
            final List<Node<T>> files = localEntry.iterate();
            for (final Node<T> innerFile : files) {
                if (innerFile.getData().equals(name)) {
                    result.add(innerFile);
                }
                allFiles.add(innerFile);
            }
        }
        return result;
    }
}



Выводит такой текст:

авторRootFolder
Video
Terminator
Die Hard
Rocky
Music
Eminem
Picture
Picasso


С уважением, Валентин
...
Рейтинг: 0 / 0
Рекурсия
    #39692105
nastyaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Valentin Kolesnikov,

Спасибо вам большое сейчас буду тестировать вашу программу)

кстати я написала код сказали некоторые места изменить. В моем коде только до терминатора можно добавлять узлы, а как сделать так чтобы терминатор мог добавить узлы и там были Сара Коннер, Щварцнегер, т-800 и потом дальше можно было и Саре Коннер тоже добавить узлы и тд (чтобы бесконечно как наследование)

http://www.sql.ru/forum/1301450/napisala-kod-no-vyvodit-po-drugomu
...
Рейтинг: 0 / 0
Рекурсия
    #39694521
xds
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
xds
Гость
nastyaa,

мыши плакали, кололись, продолжали копипастить код на форум вместо того, чтобы слушать советы взрослых людей по поводу github
...
Рейтинг: 0 / 0
Рекурсия
    #39700443
Korcar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как там у Насти дела? все чики-пуки или просто зациклилось?
...
Рейтинг: 0 / 0
18 сообщений из 43, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Рекурсия
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]