0 / 0 / 0
Регистрация: 29.06.2020
Сообщений: 1
1

Создать два новых стека, переместив в первый из них все элементы исходного стека с четными значениями

29.06.2020, 16:13. Показов 854. Ответов 2

Дан указатель head1 на вершину непустого стека. Создать два новых стека, переместив в первый из них все элементы исходного стека с четными значениями, а во второй — с нечетными (элементы в новых стеках будут располагаться в порядке, обратном исходному; один из этих стеков может оказаться пустым). Вывести адреса вершин полученных стеков (для пустого стека вывести NULL).

Пытаюсь выполнить задачу,написал стек,а дальше думаю над тем,нужно ли этот стек скопипастить,чтоб создать второй стек и выполнить условие задачи,буду благодарен за помощь
C#
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
public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        public class Node
        {
            public Node(int data)
            {
                Data = data;
            }
            public int Data { get; set; }
            public Node Next { get; set; }
        }
 
        public class myList
        {
            Node head;
            Node tail;
            int count;
            public void Add (int data)
            {
                Node node = new Node(data);
                if (head == null)
                {
                    head = node;
                    node.Next = null;
                    tail = node;
                }
                else
                {
                    tail.Next = node;
                    tail = node;
                    tail.Next = null;
                }
 
            }
           
        }
 
 
        private void button1_Click(object sender, EventArgs e)
        {
           
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            textBox1.Text = "";
            textBox2.Text = "";
            textBox3.Text = "";
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }
    }
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.06.2020, 16:13
Ответы с готовыми решениями:

Создать два новых стека, переместив в первый из них все элементы исходного стека с четными значениями
Дан указатель P1 на вершину непустого стека. Создать два новых стека, переместив в первый из них...

Создать два новых стека, переместив в первый из них
Дан указатель P1 на вершину непустого стека. Создать два новых стека, переместив в первый из них...

Создать два новых стека, с четными и нечетными элементами первоначального стека
Дано указатель P1 на вершину непустого стека. Создать два новых стека , переместив в первый из них...

Задан указатель P1 на вершину непустого стека. Создать два новых стека
Добрый вечер, у меня возникла проблемка с такой программкой. Вывести в компонент Label. ...

2
Wanna be serious
586 / 473 / 186
Регистрация: 31.07.2013
Сообщений: 1,693
29.06.2020, 17:05 2
Это не стек. Это недосписок какой-то.

Цитата Сообщение от UncleVan Посмотреть сообщение
нужно ли этот стек скопипастить
Куда скопипастить? Читайте разницу между классом и объектом.

Сама суть задания написана сикось-накось. Тут по всей видимости три стека. В первом значения, остальные два должны быть заполнены значениями из исходного стека. Поэтому из первого вытягиваете элемент с помощью Pop(), проверяете на чётность if (value % 2 == 0), если чётный - то в одни отправляете значение, если нет - в другой.
0
1836 / 1178 / 501
Регистрация: 14.10.2018
Сообщений: 3,179
29.06.2020, 17:26 3
Цитата Сообщение от UncleVan Посмотреть сообщение
Дан указатель
Хоть раз работали с указателем? Это не тоже самое, что и ссылка.
Цитата Сообщение от UncleVan Посмотреть сообщение
написал стек
Стек написан не полностью. При классическом стеке должны быть 3 метода Push, Pop, Peek. Не хотите замечаний от препода, называйте вещи своими именами: не myList а Stack, не Add а Push.
Цитата Сообщение от UncleVan Посмотреть сообщение
Пытаюсь выполнить задачу
В задании не сказано про WinForm, лучше сделать это в консоли, имхо проще
Цитата Сообщение от UncleVan Посмотреть сообщение
стек скопипастить
Не надо ничего копипастить, при написании 3-ех вышеуказанных методов работа со стеком становится очень простой. Из одного вытянули - проверили на условие - вставили в нужный. Это все равно что разбирать стопку черно-белых тарелок (черную в левую стопку, белую в правую стопку).
Цитата Сообщение от Bespridelschic Посмотреть сообщение
Это недосписок какой-то.
Честно говоря не так сильно они и отличаются, алгоритмы близки друг к другу. Я бы назвал это недо-стеком
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.06.2020, 17:26
Помогаю со студенческими работами здесь

Из одного стека, хранящего символы, создать два новых стека
Из одного стека, хранящего символы, создать два новых стека: один с латинскими буквами, удвоив...

Из одного стека, хранящего символы, создать два новых стека
Из одного стека, хранящего символы, создать два новых стека: один с латинскими буквами, удвоив...

Создать два новых файла, первый из которых содержит элементы исходного файла с четными номерами, а второй — с нечетными.
Дан файл вещественных чисел с именем Name1. Создать два новых файла с именами Name2 и Name3, первый...

Создать два файла, первый из которых содержит элементы исходного с нечетными номерами, а второй — с четными
Задан файл действительных чисел (создать программным путем). Создать два новых файла, первый из...

создать стек в памяти из этих чисел таким образом, чтобы на вершине стека было самое большое число. Удалить из стека все отрицательные элементы.
Помогите решить. В файл записывается последовательность целых чисел. Прочитать последовательность...

Создать два новых файла, в первом - элементы исходного файла с нечетными номерами, во втором - с четными
задания по Pascal. 1. Дан текст. Между соседними словами – не менее одного пробела, за...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru