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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

【學(xué)習(xí)打卡】第2天 數(shù)據(jù)結(jié)構(gòu)之“棧”

標(biāo)簽:
JavaScript

课程名称:JavaScript版数据结构与算法
课程章节:第3章 数据结构之“栈”
主讲老师:lewis

课程内容:

今天学习的内容包括:
3-4 前端与栈:JS 中的函数调用堆栈——函数的琏式调用就是一个堆栈的过程。
3-5 LeetCode:144. 二叉树的前序遍历——使用迭代模式实现二叉树前序遍历。
3-6 栈-章节总结——js中使用Array实现栈的所有功能,push,pop,stack[stack.length-1]。
3-7 【勤于思考,夯实学习成果】阶段思考题——封装stack和十进制转二进制写法。

课程收获:

查看在vscode中debugger琏式调用函数堆栈的过程

const func1 = () => {
  func2()
}
const func2 = () => {
  func3()
}
const func3 = () => {}
func1()

使用迭代模式实现二叉树前序遍历

1、使用while进行循环,迭代模式实现

/**
 * @param {TreeNode} root
 * @return {number[]}
 */
var preorderTraversal = function(root) {
    const res = []
    const stack = []
    if(root) stack.push(root)
    while(stack.length){
        const n = stack.pop()
        res.push(n.val)
        
        if(n.right) stack.push(n.right)
        if(n.left) stack.push(n.left)
    }

    return res
};

虽然实现了,但是没太理解😭

阶段思考学习:

1、封装一个 Stack 类

class Stack {
  constructor() {
    this.stack = []
  }
  
  push(root){
    this.stack.push(root)
  }
  
  pop(){
    return this.stack.pop()
  }
  
  peek(){
    return this.stack[this.stack.length - 1]
  }
}

const stack = new Stack()
stack.push('a')
stack.push('b')
stack.push('c')
stack.push('d')
console.log(stack.pop())
console.log(stack.pop())
console.log(stack.pop())
console.log(stack.pop())

2、对 100 进行十进制数字转为二进制

let Dec2bin = (data) => {
  const stack = []
  let n = data
  if(n === 0) return 0
  while(n > 0){
    stack.push(n % 2)
    n = Math.floor(n / 2)
  }
  
  let str = ''
  while (stack.length){
    str += stack.pop()
  }
  return str
}

console.log(Dec2bin(100))
console.log(Dec2bin(10))

貌似懂了😈,算法很有魅力,还是要先过一遍,然后多学几遍,对以后编程应该哟很大的帮助,改变编程思维,优化代码流程。加油😀

坚持打卡,坚持学习!明天见💪~

https://img1.sycdn.imooc.com//62ed1fbb0001148519200892.jpg

https://img1.sycdn.imooc.com//62ed202e00014d4419200892.jpg

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消