Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

1.8 ディスカッションと練習問題 問1.2解答 #62

Open
marina1017 opened this issue Jul 4, 2019 · 2 comments
Open

1.8 ディスカッションと練習問題 問1.2解答 #62

marina1017 opened this issue Jul 4, 2019 · 2 comments

Comments

@marina1017
Copy link

@spinute

はじめに

自分と同じく独学で勉強している人が、理解をきちんとできてるか確認のために、問題を解いてみたものの、解答解説がなくて困っている人を助けられたら良いなと考えております

どこにかけば良いのかわからなかったのでとりあえず、ひとつずつIssuesに入れていきます。
こうしてほしいというご要望があればそれに従います。

第一章のディスカッションと練習問題の問1.1をPythonで解きましたが、現在整え中です。
まずは問1.2から解答と図を書きましたので、確認いただけると幸いです。

考えた解答

[+1, -1,+1, -1]を用意する。+1, -1からなる数列について、+1 を pushに、 -1 を pop に置き換えた操作の列を作る。この場合[push,pop,push,pop]となる。この場合Dyck wordになる。
次に[+1, -1,-1, +1]を用意する。この場合[push,pop,pop,push]となる。このとき配列3番目のpopは、中に何もない状態でpopできないのでDyck wordとならない。
まとめると
このとき「元の数列がDyck wordであること」と「操作を順に実行したとき空のスタックからpopしないこと」が同じになる。

プロジェクト - スケッチ 1

@spinute
Copy link
Owner

spinute commented Jul 4, 2019

正しいです!

絵や例があるの、文だけだとウッっとなる人の理解の助けになりそうで、とても良いです📍

@marina1017
Copy link
Author

ありがとうございます!
自分が文字だけだとウッってなるのでできるだけ、図で書けるのは書いておこうかなとおもっています

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants