第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
  • 說實話,在棧中加一個取棧頂元素會更友好

    http://img1.sycdn.imooc.com//5f55d2380001a70c04600925.jpg

    查看全部
  • default

    查看全部
  • 類模板

    運算符重載

    查看全部
    0 采集 收起 來源:案例完善

    2020-03-12

  • 出棧傳入的是引用的好處:

    使用這個函數(shù)的時候,傳入?yún)?shù)可以是一個變量,這個變量可以把傳給他的值取出

    執(zhí)行入棧操作,把元素存入棧頂,棧頂指針++以后指向了一個空位置(下一個元素要入棧的位置)所以入棧先復制再++操作

    入棧操作后做出棧操作,要先把棧頂指針--指向有元素的位置,再把棧頂元素賦值給變量 ,達到了棧高度度下降,并且返回了一個值


    查看全部
    0 采集 收起 來源:實例演示二

    2020-03-12

  • 修改后:

    #include?<iostream>
    #include?<stdlib.h>
    #include?"MyStack.h"
    #include?<algorithm>
    #include?<string>
    using?namespace?std;
    
    //用棧進行括號匹配
    
    int?main(void)
    {
    ????//定義兩個棧
    ????MyStack?*pStack?=?new?MyStack(30);//用于存放輸入字符串的字符
    ????MyStack?*pNeedStack?=?new?MyStack(30);//用于存放棧頂急需匹配的字符
    
    ????char?str[]?=?"[()]";
    ????char?currentNeed?=?0;
    ????for(int?i?=?0;?i?<?strlen(str);i++)
    ????{
    ????????if(str[i]?!=?currentNeed)
    ????????{
    ????????????pStack->push(str[i]);
    ????????????switch(str[i])
    ????????????{
    ????????????????case'[':
    ????????????????????if(currentNeed?!=?0)//currentNeed有一個正確的值
    ????????????????????{
    ????????????????????????pNeedStack->push(currentNeed);
    ????????????????????}
    ????????????????????currentNeed?=?']';
    ????????????????????break;
    ????????????????case?'(':
    ????????????????????if(currentNeed?!=?0)
    ????????????????????{
    ????????????????????????pNeedStack->push(currentNeed);
    ????????????????????}
    ????????????????????currentNeed?=?')';
    ????????????????????break;
    ????????????????default:
    ????????????????????cout<<"字符串括號匹配"<<endl;
    
    ????????????????????return?0;
    ????????????}
    ????????}
    ????????else
    ????????{
    ????????????char?elem;
    ????????????pStack->pop(elem);
    ????????????if(pNeedStack->pop(currentNeed))
    ????????????{
    ????????????????currentNeed?=?0;
    ????????????}
    
    ????????}
    ????}
    
    ????if(pStack->stackEmpty())
    ????{
    ????????cout<<"字符串括號匹配"<<endl;
    ????}
    ????else
    ????{
    ????????cout<<"字符串括號不匹配"<<endl;
    ????}
    
    
    ????delete?pStack;
    ????pStack?=?NULL;
    
    ????delete?pNeedStack;
    ????pNeedStack?=?NULL;
    
    
    ????return?0;
    }

    還是有點不太理解,自己做

    查看全部
  • #include?<iostream>
    #include?<stdlib.h>
    #include?"MyStack.h"
    #include?<algorithm>
    #include?<string>
    using?namespace?std;
    
    //用棧進行括號匹配
    
    int?main(void)
    {
    ????//定義兩個棧
    ????MyStack?*pStack?=?new?MyStack(30);//用于存放輸入字符串的字符
    ????MyStack?*pNeedStack?=?new?MyStack(30);//用于存放棧頂急需匹配的字符
    
    ????char?str[]?=?"[()]";
    ????char?currentNeed?=?0;
    ????for(int?i?=?0;?i?<?strlen(str);i++)
    ????{
    ????????if(str[i]?!=?currentNeed)
    ????????{
    ????????????pStack->push(str[i]);
    ????????????switch(str[i])
    ????????????{
    ????????????????case'[':
    ????????????????????if(currentNeed?!=?0)//currentNeed有一個正確的值
    ????????????????????{
    ????????????????????????pNeedStack->push(currentNeed);
    ????????????????????}
    ????????????????????currentNeed?=?']';
    ????????????????????break;
    ????????????????case?'(':
    ????????????????????if(currentNeed?!=?0)
    ????????????????????{
    ????????????????????????pNeedStack->push(currentNeed);
    ????????????????????}
    ????????????????????currentNeed?=?')';
    ????????????????????break;
    ????????????}
    ????????}
    ????????else
    ????????{
    ????????????char?elem;
    ????????????pStack->pop(elem);
    ????????????pNeedStack->pop(currentNeed);
    ????????}
    ????}
    
    ????if(pStack->stackEmpty())
    ????{
    ????????cout<<"字符串括號匹配"<<endl;
    ????}
    ????else
    ????{
    ????????cout<<"字符串括號不匹配"<<endl;
    ????}
    
    
    ????delete?pStack;
    ????pStack?=?NULL;
    
    ????delete?pNeedStack;
    ????pNeedStack?=?NULL;
    
    
    ????return?0;
    }


    查看全部
  • 老師是把余數(shù)10,11,12,13直接壓進棧的,感覺直接壓A、B、C、D方便很多。


    老師的方法暫未看。

    查看全部
  • 上一個程序不完善,因為有16進制。

    https://www.cnblogs.com/curo0119/p/8304924.html

    自己修改:應該正確:

    #include?<iostream>
    #include?<stdlib.h>
    #include?"MyStack.h"
    #include?<algorithm>
    #include?<string>
    using?namespace?std;
    
    //用棧進行進制轉換
    
    #define?BIN?2
    #define?OCT?8
    #define?HEX?16
    
    int?main(void)
    {
    ????string?str?=?"0123456789ABCDEF";
    ????MyStack?*pStack?=?new?MyStack(30);
    
    ????int?N?=?12;
    
    ????while(N)
    ????{
    ????????int?tmp?=?N?%?HEX;
    
    ????????pStack->push(str[tmp]);
    
    ????????N?/=?HEX;
    ????}
    
    ????pStack->stackTraverse(false);
    ????delete?pStack;
    ????pStack?=?NULL;
    ????return?0;
    }



    查看全部
  • http://img1.sycdn.imooc.com//5e3b8444000136d413060838.jpg

    首先把之前的MyStack改成int型:

    #include?<iostream>
    #include?<stdlib.h>
    #include?"MyStack.h"
    #include?<algorithm>
    using?namespace?std;
    
    //用棧進行進制轉換
    
    #define?BIN?2
    #define?OCT?8
    #define?HEX?16
    
    int?main(void)
    {
    ????MyStack?*pStack?=?new?MyStack(30);
    
    ????int?N?=?1348;
    
    ????while(N)
    ????{
    ????????int?tmp?=?N?%?OCT;
    ????????pStack->push(tmp);
    ????????N?/=?OCT;
    ????}
    
    ????pStack->stackTraverse(false);
    ????delete?pStack;
    ????pStack?=?NULL;
    ????return?0;
    }


    查看全部
  • 沒做筆記。。

    查看全部
    0 采集 收起 來源:案例改造

    2020-02-05

  • main.cpp
    
    #include?<iostream>
    #include?<stdlib.h>
    #include?"MyStack.h"
    using?namespace?std;
    
    //實現(xiàn)棧
    
    int?main(void)
    {
    ????MyStack?*pStack?=?new?MyStack(5);
    
    ????pStack->push('h');
    ????pStack->push('e');
    ????pStack->push('l');
    ????pStack->push('l');
    ????pStack->push('o');
    
    ????pStack->stackTraverse(true);
    
    ????pStack->clearStack();
    
    ????cout<<pStack->stackLength()<<endl;
    
    ????if(pStack->stackEmpty())
    ????{
    ????????cout?<<?"棧為空"?<<?endl;
    ????}
    
    ????delete?pStack;
    ????pStack?=?NULL;
    ????return?0;
    }
    MyStack.cpp
    
    //
    
    #include?"MyStack.h"
    #include?<iostream>
    using?namespace?std;
    
    MyStack::MyStack(int?size)//分配內存初始化??臻g,設定棧容量,棧頂
    {
    ????m_iSize?=?size;
    ????m_pBuffer?=?new?char[size];
    ????m_iTop?=?0;//表示此時的棧是個空棧
    
    }
    
    MyStack::~MyStack()
    {
    ????delete?[]m_pBuffer;
    }
    
    bool?MyStack::stackEmpty()//判定棧是否為空,為空返回true,非空返回false
    {
    ????if(0?==?m_iTop)
    ????{
    ????????return?true;
    ????}
    ????return?false;
    }
    bool?MyStack::stackFull()
    {
    ????if(m_iTop?==?m_iSize)
    ????{
    ????????return?true;
    ????}
    ????return?false;
    }
    
    void?MyStack::clearStack()//清空棧
    {
    ???????m_iTop?=?0;
    }
    
    int?MyStack::stackLength()//已有元素的個數(shù)
    {
    ????return?m_iTop;
    }
    
    bool?MyStack::push(char?elem)//元素入棧,棧頂上升
    {
    ????//先判斷是否棧滿
    ????if(stackFull())
    ????{
    ????????return?false;
    ????}
    ????m_pBuffer[m_iTop]?=?elem;
    ????m_iTop++;
    ????return?true;
    }
    //法二
    //char?MyStack::pop()
    //{
    //????if(stackEmpty())
    //????{
    //????????throw?1;
    //????}
    //????else
    //????{
    //????????m_iTop--;
    //????????return?m_pBuffer[m_iTop];
    //????}
    //}
    bool?MyStack::pop(char?&elem)//元素出棧,棧頂下降
    {
    ????//先判定是否為空
    ????if(stackEmpty())
    ????{
    ????????return?false;
    ????}
    ????m_iTop--;//入棧之后棧頂指向的是一個空位置
    ????elem?=?m_pBuffer[m_iTop];
    ????return?true;
    }
    
    void?MyStack::stackTraverse(bool?isFromButoom)//遍歷棧中所有元素
    {
    ????if(isFromButoom)
    ????{
    ????????for(int?i?=?0;?i?<?m_iTop;i++)//棧的長度就是m_iTop
    ????????{
    ????????????cout<<?m_pBuffer[i]?<<?",";
    ????????}
    ????}
    ????else
    ????{
    ????????for(int?i?=?m_iTop-1;?i>=0;i--)
    ????????{
    ????????????cout?<<?m_pBuffer[i]?<<?",";
    ????????}
    ????}
    
    }
    MyStack.h
    
    
    
    #ifndef?INC_0131_MYSTACK_H
    #define?INC_0131_MYSTACK_H
    class?MyStack
    {
    public:
    ????MyStack(int?size);//分配內存初始化棧空間,設定棧容量,棧頂
    ????~MyStack();//回收??臻g內存
    ????bool?stackEmpty();//判定棧是否為空,為空返回true,非空返回false
    ????bool?stackFull();
    ????void?clearStack();//清空棧
    ????int?stackLength();//已有元素的個數(shù)
    ????bool?push(char?elem);//元素入棧,棧頂上升
    ????bool?pop(char?&elem);//元素出棧,棧頂下降
    ????void?stackTraverse(bool?isFromButoom);//遍歷棧中所有元素
    
    private:
    ????char?*m_pBuffer;//棧空間指針
    ????int?m_iSize;//棧容量
    ????int?m_iTop;//棧頂,棧中元素個數(shù)棧頂為1說明有一個元素
    };
    
    #endif?//INC_0131_MYSTACK_H


    查看全部
    1 采集 收起 來源:演示代碼運行

    2020-02-05

  • 為什么用.h和.cpp:https://blog.csdn.net/happywlg123/article/details/80375593

    查看全部
    0 采集 收起 來源:演示代碼運行

    2020-02-05

  • 數(shù)據(jù)結構—堆棧
    查看全部
    0 采集 收起 來源:實例介紹

    2019-09-26

  • 要想用 new,這個類要有一個默認的構造函數(shù)

    查看全部
    0 采集 收起 來源:案例改造

    2019-09-21

  • 函數(shù)指針 。

    查看全部
    0 采集 收起 來源:實例演示二

    2019-09-20

  • 08:00

    查看全部
    0 采集 收起 來源:實例演示二

    2019-09-20

  • 拋出異常 throw

    外部 try catch

    ?????

    (exception)異常,是用來報告你能恢復的那一類錯誤的,不是bugfix。

    查看全部
    0 采集 收起 來源:實例演示二

    2019-09-20

  • public?class?Coordinate?{
    ????private?int?x;
    ????private?int?y;
    ????Coordinate(int?x,int?y){
    ????????this.x=x;
    ????????this.y=y;
    ????}
    ????void?PrintCoordinate(){
    ????????System.out.println("("+x+","+y+")");
    ????}
    }


    查看全部
    0 采集 收起 來源:案例改造

    2019-09-17

  • public?class?Mystackmain?{
    ????public?static?void?main(String[]?args)?{
    ????????Mystack?p=new?Mystack(5);
    
    ????????p.push('h');
    ????????p.push('e');
    ????????p.push('l');
    ????????p.push('l');
    ????????p.push('0');
    
    ????????p.StackTraverse(false);
    ????????System.out.println(p.StackLength());
    
    
    ????????p.pop();
    ????????p.pop();
    
    ????????p.StackTraverse(false);
    ????????System.out.println(p.StackLength());
    
    ????????if(p.isEmpty()){
    ????????????System.out.println("棧為空");
    ????????}
    ????????if(p.isFull()){
    ????????????System.out.println("棧為滿");
    ????????}
    
    ????????p.DeleteMystack();
    
    ????}


    查看全部
    0 采集 收起 來源:案例改造

    2019-09-17

  • public?class?Mystack?{
    ????private?int?head;
    ????private?char[]?stack;
    ????private?int?StackLength;
    ????private?int?StackCapacity;
    ????Mystack(int?StackCapacity){
    ????????this.StackCapacity=StackCapacity;
    ????????head=-1;
    ????????StackLength=0;
    ????????stack=new?char[StackCapacity];
    ????}
    ????void?DeleteMystack(){
    ????????stack=null;
    ????}
    
    ????boolean?isFull(){
    ????????if(head+1==StackCapacity){
    ????????????return?true;
    ????????}
    ????????return?false;
    ????}
    
    ????boolean?isEmpty(){
    ????????if(head==-1){
    ????????????return?true;
    ????????}
    ????????return?false;
    ????}
    
    ????void?ClearStack(){
    ????????head=-1;
    ????????StackLength=0;
    ????}
    
    ????int?StackLength(){
    ????????return?StackLength;
    ????}
    
    ????boolean?push(char?k){
    ????????if(isFull()){
    ????????????return?false;
    ????????}
    ????????head++;
    ????????stack[head]=k;
    ????????StackLength++;
    ????????return?true;
    ????}
    
    ????boolean?pop(){
    ????????if(isEmpty()){
    ????????????return?false;
    ????????}
    ????????System.out.println("出棧元素為"+stack[head]);
    ????????head--;
    ????????StackLength--;
    ????????return?true;
    ????}
    
    ????void?StackTraverse(boolean?isFromTop){
    ????????if(!isFromTop){
    ????????????for(int?i=0;i<=head;i++){
    ????????????????System.out.print(stack[i]);
    ????????????}
    ????????????System.out.println();
    ????????}
    ????????else?{
    ????????????for?(int?i?=?head;?i?>=?0;?i--)?{
    ????????????????System.out.print(stack[i]);
    ????????????}
    ????????????System.out.println();
    ????????}
    ????}

    java實現(xiàn)

    查看全部
    0 采集 收起 來源:案例改造

    2019-09-17

  • 棧類:后進先出

    公有函數(shù):

    MyStack(int size):構造函數(shù),分配內存空間

    ~MyStack()? ?????????:析構函數(shù)與構造函數(shù)相反,主要在構造函數(shù)執(zhí)行完畢后被自動調用執(zhí)行善后工作,如釋放構造函數(shù)開辟的內存

    int stackLength(): 返回棧里面的元素個數(shù)(不是內存空間大?。?/p>

    void push(char elem):入棧(入棧前要判斷棧是否已滿)

    void pop(char &elem):出棧(出棧前要判斷棧是否為空)

    入棧導致棧頂上升 ? ?出棧導致棧頂下降

    ????????????????? ??


    查看全部
    0 采集 收起 來源:實例介紹

    2019-08-23

首頁上一頁1234567下一頁尾頁

舉報

0/150
提交
取消
課程須知
"本課程是數(shù)據(jù)結構初級課程 1、熟練掌握C++語言基礎語法"
老師告訴你能學到什么?
1、棧的工作原理 2、棧的實現(xiàn)方法及編碼技巧 3、棧模板的編碼技巧和使用技巧 4、數(shù)制轉換編程思路及棧的作用 5、括號匹配編程思路及棧的作用

微信掃碼,參與3人拼團

微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!