[C言語]白駿10828:スタック
潮流
スタックです.隠れても隠れても、何度も聞いたことがあります.abc順にスタック空間に入ると、現れるときはcbaです.復帰の時にいろいろ説明を聞きました.
今回は私たちがそのスタックを実現します.問題を見ると、全部で5つの命令語があります.私たちはそれを利用します.
コード#コード#
#include <stdio.h>
#include <string.h>
#define stack_size 10001
int high = -1;
int stack[stack_size];
void push(int x)
{
high++;
stack[high] = x;
}
int empty()
{
if (high == -1)
return 1;
else
return 0;
}
int pop()
{
if (empty())
{
return -1;
}
else
{
return stack[high--];
}
}
int top()
{
if (empty())
return -1;
else
return stack[high];
}
int main()
{
int N = 0, push_data = 0;
char command[5] = {0, };
scanf("%d", &N);
for (int i = 0; i < N; i++)
{
scanf("%s", command);
if (!strcmp(command, "push"))
{
scanf("%d", &push_data);
push(push_data);
}
else if (!strcmp(command, "pop"))
{
printf("%d\n", pop());
}
else if (!strcmp(command, "empty"))
{
printf("%d\n", empty());
}
else if (!strcmp(command, "size"))
{
printf("%d\n", high + 1);
}
else if (!strcmp(command, "top"))
{
printf("%d\n", top());
}
}
return 0;
}
コードは本当に簡単です.https://code-lab1.tistory.com/5ここで理論を学びました
https://mu7a7ion.tistory.com/25はここで応用を学んだ.
しかし、もう一度探してみると、接続リストで解く方法があるという.
もうすぐ隠れるので、接続リストで解く方法を身につけておけばよかったので、勉強することにしました.
まず金を注文してから修正する.
接続リスト
Reference
この問題について([C言語]白駿10828:スタック), 我々は、より多くの情報をここで見つけました https://velog.io/@kimmainsain/C언어-백준-10828-스택テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol