亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

利用棧結(jié)構(gòu)實現(xiàn)四則運算的巧妙方法

學(xué)益得智能硬件 ? 來源:學(xué)益得智能硬件 ? 2025-02-07 11:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上個視頻寫了個簡易計算器,算個簡單的加減乘除還行,但是如果來個混合運算,或者加個括號,這幾行代碼就差的太多了。

處理這種混合運算,不得不提到數(shù)據(jù)結(jié)構(gòu)中的棧。

我們平時寫的這種表達(dá)式,叫做中綴表達(dá)式,非常符合人的正常思維,但是計算機計算的話不方便。

中綴表達(dá)式可以轉(zhuǎn)換成后綴表達(dá)式,這種表達(dá)式看起來抽象一些,但是不需要括號或者優(yōu)先級,計算機計算的話比較方便。

整個過程有點復(fù)雜,分的情況比較多,就以這個表達(dá)式為例。

首先是把中綴表達(dá)式轉(zhuǎn)換成后綴表達(dá)式,需要用到一個棧,來存放運算符。

開始遍歷字符串。

遇到數(shù)字,直接寫下來。后面是加號,如果此時棧是空棧,符號直接進棧;再往后,左括號,左括號直接進棧;數(shù)字 1 直接寫下來;再往后是加號,如果棧頂是左括號,加號直接進棧;1 寫下來;后面是右括號,右括號不用進棧,此時讓加號出棧;左右括號遇到一起,可以讓左括號出棧,兩個括號直接丟掉就行;后面遇到乘號,因為乘號優(yōu)先級比加號高,乘號直接進棧;2 寫下來;遇到減號,因為減號的優(yōu)先級不高于乘號,所以乘號出棧;減號的優(yōu)先級同樣不高于加號,加號出棧;此時棧變成空棧,減號入棧;最后把 1 寫下來;表達(dá)式遍歷結(jié)束,減號出棧。

這個表達(dá)式就是后綴表達(dá)式。

計算后綴表達(dá)式也需要一個棧,方法就是,遇到數(shù)字進棧,遇到運算符就出來兩個數(shù)字,運算后把結(jié)果進棧。

前面的 2 1 1 分別進棧;遇到加號,1 和 1 出棧,計算得到 2 再進棧;2 進棧;遇到乘號,2 和 2 出棧計算得到 4,4進棧;遇到加號,4 和 2 出棧,計算得到 6,6 進棧;數(shù)字 1 進棧;最后是減號,1 出棧,6 出棧,用后出棧的減去先出棧的,結(jié)果是 5,5進棧。

最后留在棧里面的就是結(jié)果。

這個過程很復(fù)雜,寫代碼之前需要對各種情況分類。

這里直接貼出代碼,如果有需要,評論區(qū)留言代碼,我私信發(fā)你。

代碼寫出來后簡單的測試了幾個,沒什么問題,如果大家在使用中有什么問題,歡迎來交流。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)字
    +關(guān)注

    關(guān)注

    1

    文章

    1699

    瀏覽量

    52349
  • 運算
    +關(guān)注

    關(guān)注

    0

    文章

    132

    瀏覽量

    26561

原文標(biāo)題:用棧實現(xiàn)四則運算

文章出處:【微信號:學(xué)益得智能硬件,微信公眾號:學(xué)益得智能硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    第4章 C語言基礎(chǔ)以及流水燈的實現(xiàn)(4.3 4.4)

    4.3 C語言基本運算符 小學(xué)數(shù)學(xué)學(xué)過加、減、乘、除等運算符號以及四則混合運算,而這些運算符號在C語言中也有,但是有些表達(dá)
    的頭像 發(fā)表于 10-29 15:30 ?103次閱讀

    定點數(shù)表示實數(shù)的方法以及定點數(shù)在硬件上的運算驗證

    本篇主要介紹定點數(shù)表示實數(shù)的方法以及定點數(shù)在硬件上的運算驗證 為什么選定點數(shù) 32位單精度浮點數(shù): 32位的單精度浮點數(shù)為例,IEE754標(biāo)準(zhǔn)規(guī)定,一個flaot類型的浮點數(shù)X可以
    發(fā)表于 10-28 08:13

    浮點數(shù)是如何實現(xiàn)開平方運算

    摘要: 本文主要描述浮點數(shù)是如何實現(xiàn)開平方運算的。 簡介 事實上,浮點數(shù)的開平方運算結(jié)構(gòu)與定點數(shù)甚至整數(shù)的開平方運算
    發(fā)表于 10-24 08:42

    e203乘法運算結(jié)構(gòu)及算法原理

    e203乘法部件結(jié)構(gòu) E203的乘法操作由一個17周期的乘法器實現(xiàn)。為了提升性能,該乘法器采用了基4Booth編碼,將乘數(shù)分解為17個Booth編碼,與被乘數(shù)相乘后形成的部分和再在相加,從而實現(xiàn)
    發(fā)表于 10-22 06:43

    e203 ALU乘法運算結(jié)構(gòu)及算法原理

    e203乘法部件結(jié)構(gòu) E203的乘法操作由一個17周期的乘法器實現(xiàn)。為了提升性能,該乘法器采用了基4Booth編碼,將乘數(shù)分解為17個Booth編碼,與被乘數(shù)相乘后形成的部分和再在相加,從而實現(xiàn)
    發(fā)表于 10-22 06:12

    利用e203中NICE協(xié)處理器加速濾波運算

    和加法器的方法來加速濾波運算。 使用NICE協(xié)處理器加速的程序為一個長循環(huán),計算較長(100到1000量級)的兩個浮點數(shù)組乘累加的結(jié)果,分別命名為ifm (Input Feature Map
    發(fā)表于 10-21 13:40

    如何利用Trace機制實現(xiàn)LLCP預(yù)覽功能

    在藍(lán)牙協(xié)議開發(fā)過程中,有時需要預(yù)先知道 LLCP。本文將介紹如何利用 Trace 機制實現(xiàn) LLCP 預(yù)覽功能。
    的頭像 發(fā)表于 10-09 17:55 ?1331次閱讀

    數(shù)據(jù)中心能效困局怎么解?這份方案給出妙方

    數(shù)據(jù)中心能效困局怎么解?這份方案給出妙方
    的頭像 發(fā)表于 03-14 08:05 ?358次閱讀
    數(shù)據(jù)中心能效困局怎么解?這份方案給出<b class='flag-5'>妙方</b>

    巧妙利用電源變壓器

    電源變壓器的巧妙利用,使用電源變壓器的一些技巧。
    發(fā)表于 02-24 16:13 ?1次下載

    曙光云開啟全智能時代

    近日,“全可信 云中生智”曙光云戰(zhàn)略發(fā)布會召開。曙光云從首創(chuàng)“城市云”進化到實現(xiàn)“全智能云”,打造“云智、云安、云算、云數(shù)”位一體能力體系,深度賦能千行百業(yè)數(shù)智化轉(zhuǎn)型升級。
    的頭像 發(fā)表于 12-19 15:11 ?854次閱讀

    【「從算法到電路—數(shù)字芯片算法的電路實現(xiàn)」閱讀體驗】+內(nèi)容簡介

    、AI芯片、多媒體處理芯片等)都是由四則運算器、濾波器、特殊信號發(fā)生器等基本算法電路構(gòu)成的,熟練掌握這些基本算法電路是實現(xiàn)復(fù)雜算法電路的基礎(chǔ)。忽視基本算法及其電路設(shè)計而談?wù)搹?fù)雜算法電路,無異于癡人說夢
    發(fā)表于 11-21 17:14

    【「從算法到電路—數(shù)字芯片算法的電路實現(xiàn)」閱讀體驗】+介紹基礎(chǔ)硬件算法模塊

    數(shù)問題。因此,深入理解芯片所基于的算法是國產(chǎn)自主研發(fā)的關(guān)鍵。任何算法都是由加減四則運算、濾波器、特殊信號發(fā)生器等基本數(shù)學(xué)方法構(gòu)成的,熟練掌握這些方法實現(xiàn) 算法的基礎(chǔ)。如果說復(fù)雜算法是
    發(fā)表于 11-21 17:05

    利用全息技術(shù)在硅晶圓內(nèi)部制造納米結(jié)構(gòu)的新方法

    本文介紹了一種利用全息技術(shù)在硅晶圓內(nèi)部制造納米結(jié)構(gòu)的新方法。 研究人員提出了一種在硅晶圓內(nèi)部制造納米結(jié)構(gòu)的新方法。傳統(tǒng)上,晶圓上的微
    的頭像 發(fā)表于 11-18 11:45 ?991次閱讀

    FPGA中的浮點四則運算是什么

    由于定點的四則運算比較簡單,如加減法只要注意符號擴展,小數(shù)點對齊等問題即可。在本文中,運用在前一節(jié)中描述的自定義浮點格式FPGA中數(shù)的表示方法(下),完成浮點四則運算實現(xiàn)過程 1.自
    的頭像 發(fā)表于 11-16 12:51 ?1201次閱讀
    FPGA中的浮點<b class='flag-5'>四則運算</b>是什么

    FPGA中浮點四則運算實現(xiàn)過程

    由于定點的四則運算比較簡單,如加減法只要注意符號擴展,小數(shù)點對齊等問題即可。在本文中,運用在前一節(jié)中描述的自定義浮點格式FPGA中數(shù)的表示方法(下),完成浮點四則運算實現(xiàn)過程 1.自
    的頭像 發(fā)表于 11-16 11:19 ?1855次閱讀
    FPGA中浮點<b class='flag-5'>四則運算</b>的<b class='flag-5'>實現(xiàn)</b>過程