{"id":176,"date":"2021-09-02T17:43:09","date_gmt":"2021-09-02T09:43:09","guid":{"rendered":"http:\/\/www.gislxz.top\/?p=176"},"modified":"2021-09-02T17:43:09","modified_gmt":"2021-09-02T09:43:09","slug":"%e6%95%b0%e6%8d%ae%e7%bb%93%e6%9e%84%ef%bc%885%ef%bc%89%e6%a0%88","status":"publish","type":"post","link":"https:\/\/www.gislxz.com\/index.php\/2021\/09\/02\/%e6%95%b0%e6%8d%ae%e7%bb%93%e6%9e%84%ef%bc%885%ef%bc%89%e6%a0%88\/","title":{"rendered":"\u6570\u636e\u7ed3\u6784\uff085\uff09\u6808"},"content":{"rendered":"\n<p>\u6808\u7684\u7ed3\u6784\u5f88\u7b80\u5355\uff0c\u6ca1\u5565\u8bf4\u7684\uff0c\u5206\u522b\u4f7f\u7528\u6570\u7ec4\u548c\u94fe\u8868\u4e24\u79cd\u65b9\u6cd5\u5b9e\u73b0\u6808<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*--------\u6570\u7ec4\u5b9e\u73b0\u7684\u6808--------------------------*\/\ntemplate&lt;class T>\r\nclass arrayStack {\r\npublic:\r\n\tarrayStack(int initialCapacity = 10);\/\/\u6784\u9020\u51fd\u6570\r\n\t~arrayStack() { delete &#91;]stack; }\/\/\u6790\u6784\u51fd\u6570\r\n\tbool empty() const { return stackTop == -1; }\/\/\u662f\u5426\u4e3a\u7a7a\r\n\tint size() const { return stackTop + 1; }\/\/\u8fd4\u56de\u5143\u7d20\u6570\u91cf\r\n\tT&amp; top() {\/\/\u8fd4\u56de\u6808\u9876\u5143\u7d20\r\n\t\tif (stackTop == -1)\/\/\u5224\u65ad\u662f\u5426\u4e3a\u7a7a\r\n\t\t\tcout &lt;&lt; \"\u7a7a\u6808\" &lt;&lt; endl;\r\n\t\treturn stack&#91;stackTop];\r\n\t}\r\n\tvoid pop() {\/\/\u5220\u9664\u9876\u90e8\u5143\u7d20\r\n\t\tif( stackTop == -1)\r\n\t\t\tcout &lt;&lt; \"\u7a7a\u6808\" &lt;&lt; endl;\r\n\t\tstack&#91;stackTop--].~T();\r\n\t}\r\n\tvoid push(const T&amp; theElement);\r\nprivate:\r\n\tint stackTop;\/\/\u9876\u90e8\u5143\u7d20\u7684\u5e8f\u53f7\uff0c\u4ece-1\u5f00\u59cb\uff0c-1\u4e3a\u7a7a\r\n\tint arrayLength;\r\n\tT* stack;\r\n};\r\n\r\ntemplate&lt;class T>\r\narrayStack&lt;T>::arrayStack(int initialCapacity) {\r\n\tarrayLength = initialCapacity;\r\n\tstack = new T&#91;arrayLength];\r\n\tstackTop = -1;\r\n}\r\n\r\ntemplate&lt;class T>\r\nvoid arrayStack&lt;T>::push(const T&amp; theElement) {\r\n\tif (stackTop == arrayLength - 1) {\r\n\t\tchangeLength1D(stack, arrayLength, 2 * arrayLength);\/\/\u6570\u7ec4\u53d8\u957f\u51fd\u6570\u5728\u6570\u636e\u7ed3\u6784(1)\r\n\t\tarrayLength *= 2;\r\n\t}\r\n\tstack&#91;++stackTop] = theElement;\r\n}\r\n\n\r\n\/*---------\u94fe\u8868\u5b9e\u73b0\u7684\u6808---------------------*\/\r\n\/\/\u5b9a\u4e49\u8282\u70b9\uff0c\u8be6\u89c1\u6570\u636e\u7ed3\u6784(2)\r\ntemplate&lt;class T>\r\nstruct chainNode {\r\n\tT element;\r\n\tchainNode&lt;T>* next;\r\n\r\n\tchainNode() {}\r\n\tchainNode(const T&amp; element) {\r\n\t\tthis->element = element;\r\n\t}\r\n\tchainNode(const T&amp; element, chainNode&lt;T>* next) {\r\n\t\tthis->element = element;\r\n\t\tthis->next = next;\r\n\t}\r\n};\r\n\r\ntemplate&lt;class T>\r\nclass linkedStack {\r\npublic:\r\n\tlinkedStack(int initialCapacity = 10) {\/\/\u6784\u9020\u51fd\u6570\r\n\t\tstackTop = NULL;\r\n\t\tstackSize = 0;\r\n\t}\r\n\t~linkedStack();\r\n\tbool empty() const {\/\/\u5224\u65ad\u662f\u5426\u4e3a\u7a7a\r\n\t\treturn stackSize == 0;\r\n\t}\r\n\tT&amp; top() {\/\/\u8fd4\u56de\u6808\u9876\u5143\u7d20\r\n\t\tif (stackSize == 0) {\r\n\t\t\tcout &lt;&lt; \"\u7a7a\u6808\" &lt;&lt; endl;\r\n\t\t}\r\n\t\treturn stackTop->element;\r\n\t}\r\n\tvoid pop();\r\n\tvoid push(const T&amp; theElement) {\/\/\u8fdb\u6808\r\n\t\tstackTop = new chainNode&lt;T>(theElement, stackTop);\r\n\t\tstackSize++;\r\n\t}\r\nprivate:\r\n\tchainNode&lt;T>* stackTop;\r\n\tint stackSize;\r\n};\r\n\r\ntemplate&lt;class T>\r\nvoid linkedStack&lt;T>::pop() {\/\/\u5220\u9664\u6808\u9876\u5143\u7d20\r\n\tif (stackSize == 0) {\r\n\t\tcout &lt;&lt; \"\u7a7a\u6808\" &lt;&lt; endl;\r\n\t}\r\n\tchainNode&lt;T>* nextNode = stackTop->next;\r\n\tdelete stackTop;\r\n\tstackTop = nextNode;\r\n\tstackSize--;\r\n}\r\n\r\ntemplate&lt;class T>\r\nlinkedStack&lt;T>::~linkedStack() {\/\/\u6790\u6784\u51fd\u6570\uff0c\u5220\u9664\u6240\u6709\u8282\u70b9\r\n\twhile (stackTop!=NULL)\r\n\t{\r\n\t\tchainNode&lt;T>* nextNode = stackTop->next;\r\n\t\tdelete stackTop;\r\n\t\tstackTop = nextNode;\r\n\t}\r\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"723\" src=\"http:\/\/www.gislxz.com\/wp-content\/uploads\/2021\/09\/IMG_5895-1024x723.jpg\" alt=\"\" class=\"wp-image-177\" srcset=\"https:\/\/www.gislxz.com\/wp-content\/uploads\/2021\/09\/IMG_5895-1024x723.jpg 1024w, https:\/\/www.gislxz.com\/wp-content\/uploads\/2021\/09\/IMG_5895-300x212.jpg 300w, https:\/\/www.gislxz.com\/wp-content\/uploads\/2021\/09\/IMG_5895-768x543.jpg 768w, https:\/\/www.gislxz.com\/wp-content\/uploads\/2021\/09\/IMG_5895.jpg 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>\u6570\u7ec4\u548c\u94fe\u8868\u4e24\u79cd\u65b9\u6cd5\u5b9e\u73b0\u6808<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[5],"tags":[9,7,10],"class_list":["post-176","post","type-post","status-publish","format-standard","hentry","category-5","tag-c","tag-7","tag-10"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/posts\/176","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/comments?post=176"}],"version-history":[{"count":1,"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/posts\/176\/revisions"}],"predecessor-version":[{"id":178,"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/posts\/176\/revisions\/178"}],"wp:attachment":[{"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/media?parent=176"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/categories?post=176"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gislxz.com\/index.php\/wp-json\/wp\/v2\/tags?post=176"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}