最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++實現(xiàn)逆波蘭式

 更新時間:2020年11月01日 10:10:10   作者:Who_Am_I.  
這篇文章主要為大家詳細介紹了C++實現(xiàn)逆波蘭式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

(a+b)c的逆波蘭式為ab+c,假設計算機把ab+c按從左到右的順序壓入棧中,并且按照遇到運算符就把棧頂兩個元素出棧,執(zhí)行運算,得到的結果再入棧的原則來進行處理,那么ab+c的執(zhí)行結果如下:

1)a入棧(0位置)
2)b入棧(1位置)
3)遇到運算符“+”,將a和b出棧,執(zhí)行a+b的操作,得到結果d=a+b,再將d入棧(0位置)
4)c入棧(1位置)
5)遇到運算符“”,將d和c出棧,執(zhí)行dc的操作,得到結果e,再將e入棧(0位置)

經過以上運算,計算機就可以得到(a+b)*c的運算結果e了。

逆波蘭式除了可以實現(xiàn)上述類型的運算,它還可以派生出許多新的算法,數(shù)據(jù)結構,這就需要靈活運用了。逆波蘭式只是一種序列體現(xiàn)形式。

eg:

輸入示例

1 2 + 3 4 - *

輸出示例

-3

代碼

#include <iostream>
#include <stack>
#include <cstdio>
using namespace std;

int main()
{
 string s;
 getline(cin,s);
 int n = s.length();//字符串長度
 stack<int> t;
 for(int i=0;i<n;i++)
 {
 char c=s[i];
 if(c=='+'){
 int a=t.top();
 t.pop();
 int b=t.top();
 t.pop();
 t.push(a+b);
 }
 else if(c=='-'){
 int a=t.top();
 t.pop();
 int b=t.top();
 t.pop();
 t.push(b-a);
 }
 else if(c=='*'){
 int a=t.top();
 t.pop();
 int b=t.top();
 t.pop();
 t.push(a*b);
 }
 else if(c=='/'){
 int a=t.top();
 t.pop();
 int b=t.top();
 t.pop();
 t.push(a/b);
 }
 else if(c==' '){
 continue;
 }
 else{//數(shù)字
 int m=(int)c;
 m=m-48;
 t.push(m);
 }
 }

 cout<<t.top();

 return 0;
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • c++并查集優(yōu)化(基于size和rank)

    c++并查集優(yōu)化(基于size和rank)

    這篇文章主要介紹了c++并查集優(yōu)化(基于size和rank),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02
  • C語言數(shù)據(jù)結構系列隊列篇

    C語言數(shù)據(jù)結構系列隊列篇

    本章我們將學習 "隊列" ,首先介紹隊列的概念和結構,然后我們將著重講解棧的實現(xiàn)。我們從零開始寫隊列的接口,并從零開始步步解讀。本章將繼續(xù)鞏固畫思路草圖的能力,只要思路草圖畫好了,就可以很輕松地將其轉換成代碼
    2022-02-02
  • C語言直接插入排序算法介紹

    C語言直接插入排序算法介紹

    大家好,本篇文章主要講的是C語言直接插入排序算法介紹,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • C/C++?Qt?StringListModel?字符串列表映射組件詳解

    C/C++?Qt?StringListModel?字符串列表映射組件詳解

    StringListModel?字符串列表映射組件,該組件用于處理字符串與列表框組件中數(shù)據(jù)的轉換,通常該組件會配合ListView組件一起使用,本文給大家介紹了C/C++?Qt?StringListModel?字符串列表映射組件的相關知識,感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • C++實現(xiàn)LeetCode(166.分數(shù)轉循環(huán)小數(shù))

    C++實現(xiàn)LeetCode(166.分數(shù)轉循環(huán)小數(shù))

    這篇文章主要介紹了C++實現(xiàn)LeetCode(166.分數(shù)轉循環(huán)小數(shù))
    2021-07-07
  • C++?常量成員函數(shù)學習筆記

    C++?常量成員函數(shù)學習筆記

    這篇文章主要為大家介紹了C++?常量成員函數(shù)學習筆記,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • C++如何實現(xiàn)DNS域名解析

    C++如何實現(xiàn)DNS域名解析

    這片文章介紹了C++如何實現(xiàn)DNS域名解析,還有對相關技術的介紹,代碼很詳細,需要的朋友可以參考下
    2015-07-07
  • C語言實現(xiàn)掃雷游戲附注釋

    C語言實現(xiàn)掃雷游戲附注釋

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)掃雷游戲附注釋,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C語言必背的一些經典程序代碼實例

    C語言必背的一些經典程序代碼實例

    C語言是一種高級編程語言,具有很多優(yōu)點,下面這篇文章主要給大家介紹了關于C語言必背的一些經典程序代碼,文中通過詳細的實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-05-05
  • C++?pthread入門指南

    C++?pthread入門指南

    pthread是C++98接口且只支持Linux,使用時需要包含頭文件#include?<pthread.h>,編譯時需要鏈接pthread庫,其中p是POSIX的縮寫,而POSIX是Portable?Operating?System?Interface的縮寫,這篇文章主要介紹了C++?pthread簡介,需要的朋友可以參考下
    2024-05-05

最新評論

连江县| 东台市| 丹江口市| 璧山县| 固安县| 商城县| 佛冈县| 上犹县| 平山县| 镇巴县| 郓城县| 高尔夫| 东阳市| 淄博市| 天水市| 东乌珠穆沁旗| 天等县| 墨玉县| 莱芜市| 云和县| 崇文区| 无极县| 禄丰县| 郧西县| 江津市| 南京市| 周宁县| 江门市| 泌阳县| 家居| 吴忠市| 泰来县| 新沂市| 景洪市| 驻马店市| 延津县| 西乡县| 丹阳市| 洛南县| 潜江市| 黎川县|