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

Описать и реализовать класс Стек, моделирующий массивом стек, для хранения любых объектов

16.03.2014, 14:36. Показов 4766. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
ПОЖАЛУЙСТА ПОМОГИТЕ РАЗОБРАТЬСЯ С ЗАДАЧЕЙ НА JAVA!!!
только начинаю изучать этот язык. буду очень признательна за пояснение каждой строчки кода!

Описать и реализовать класс Стек, моделирующий массивом стек, для хранения любых
объектов. Написать программу, которая будет хранить в стеке различные виды объектов:
строки, числа, игровые автоматы
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.03.2014, 14:36
Ответы с готовыми решениями:

Реализовать класс Стек, моделирующий работу со стеком (не учитывая переполнения и пустоту стека)
Методы мной уже описаны. Они очень простые и понятные. Но я не понимаю, как организовать работу...

Описать и реализовать класс Стек
Описать и реализовать класс Стек, моделирующий массивом стек, для хранения любых объектов....

Стек и очередь для хранения объектов типа Coord
Ниже представлен пример класса Coord. Напишите программу для хранения объектов типа Coord, ...

Реализовать стек для хранения и операций с данными
Ребята, помогите, пожалуйста. Заранее огромное спасибо! Реализовать стек для хранения и операций...

3
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
16.03.2014, 21:13 2
Лучший ответ Сообщение было отмечено lesya1 как решение

Решение

Дженерик стек не массивом
Stack.java
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
package easybudda.simplestack;
 
import java.util.Iterator;
 
public class Stack<T> implements Iterable<T> {
    private class Node {
        private T value;
        private Node next;
        
        public Node(T val, Node last) {
            value = val;
            next = last;
        }
        public T getValue() {
            return value;
        }
        public Node getNext() {
            return next;
        }
    }
    
    private Node top;
    
    private class StackIterator implements Iterator<T> {
 
        @Override
        public boolean hasNext() {
            return ( top != null ) ;
        }
 
        @Override
        public T next() {
            T ret = top.getValue();
            top = top.getNext();
            return ret;
        }
 
        @Override
        public void remove() {
            
        }
        
    }
 
    @Override
    public Iterator<T> iterator() {
        return new StackIterator();
    }
    
    void push(T value) {
        top = new Node(value, top);
    }
}
StackTester.java
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
package easybudda.simplestack;
 
import java.util.Iterator;
 
public class StackTester {
    public static void main(String[] args) {
        Stack<Integer> intStack = new Stack<Integer>();
        intStack.push(1);
        intStack.push(2);
        intStack.push(3);
        
        Iterator<Integer> intIterator = intStack.iterator();
        while ( intIterator.hasNext() )
            System.out.println(intIterator.next().toString());
        
        Stack<String> strStack = new Stack<String>();
        strStack.push("any");
        strStack.push("many");
        strStack.push("money");
        strStack.push("more");
        
        Iterator<String> strIterator = strStack.iterator();
        while ( strIterator.hasNext() )
            System.out.println(strIterator.next());
    }
}
1
0 / 0 / 1
Регистрация: 14.03.2014
Сообщений: 46
16.03.2014, 22:55  [ТС] 3
Спасибо, огромное, а как сделать так, что можно было хранить структуры?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
17.03.2014, 00:24 4
Лучший ответ Сообщение было отмечено lesya1 как решение

Решение

Цитата Сообщение от lesya1 Посмотреть сообщение
как сделать так, что можно было хранить структуры?
Что есть "структура" в языке java? Произвольный класс? Точно так же:
Person.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package easybudda.simplestack;
 
public class Person {
    private String name;
    private int shoeSize;
    
    public Person(String n, int ss) {
        name = n;
        shoeSize = ss;
    }
    
    public String toString() {
        return name + ", " + shoeSize;
    }
}
StackTester.java
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package easybudda.simplestack;
 
import java.util.Iterator;
 
public class StackTester {
    public static void main(String[] args) {
        Stack<Person> persons = new Stack<Person>();
        persons.push(new Person("Сидоров", 43));
        persons.push(new Person("Петров", 45));
        persons.push(new Person("Иванов", 44));
        
        Iterator<Person> person = persons.iterator();
        while ( person.hasNext() )
            System.out.println(person.next());
    }
}
Класс Stack без изменений
1
17.03.2014, 00:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.03.2014, 00:24
Помогаю со студенческими работами здесь

Реализовать стек для хранения и операций с данными вида
Реализовать стек для хранения и операций с данными вида: Имя процедуры / Количество параметров /...

На основе двух экземпляров объектов класса стек (Stack) реализовать класс очередь (Queue)
5. На основі двох екземплярів об’єктів класу стек (Stack) реалізувати клас черга (Queue). ...

Создайте класс Stack, реализующий стек для хранения символов
Создайте класс Stack, реализующий стек для хранения символов. Используйте методы push ()...

Используя стек, описать функцию проверяющую, является ли стек пустым
Используя стек, описать функцию проверяющую, является ли стек пустым


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru