ARTS(12)

82 阅读2分钟

什么是 ARTS?

  1. 算法(Algorithm): 每周至少一道 LeetCode 算法题,加强编程训练和算法学习
  2. 阅读(Review): 阅读并点评至少一篇英文技术文章,提高英文水平
  3. 技巧 (Tip):学习至少一个技术技巧,总结、归纳日常工作中遇到的知识点
  4. 分享(Share):分析一篇有观点和思考的技术文章,建立影响力,输出价值观

时间周期

2022 年 9 月月 5 日至 9 月 11 日

一:算法:

第 82 题:周一算法题之「移动零」 | 木易杨前端进阶 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序 说明:

  1. 必须在原数组上操作,不能拷贝额外的数组。
  2. 尽量减少操作次数。
输入: [0,1,0,3,12]
输出: [1,3,12,0,0]

前置知识 思路:

  1. 原地修改数组,那么 sort,concat 之类的纯函数方法行不通,需要走其他思路 JavaScript 实现及其拓展资料
function moveZeroToLast (array) {
  let index = 0
  for (let i = 0; i < array.length; i++) {
    if (array[i] === 0) {
      index++;
    } else if (index !== 0) {
      array[i - index] = array[i];
      array[i] = 0
    }
  }
  return array
}

二:阅读,英文技术文章

I Spent 2 years Launching Tiny Projects | Tiny Projects 推荐理由:

  1. 这个是互联网最喜欢的行为模式中主动的行为方式(www.ruanyifeng.com/blog/2022/0…
  2. 列出的诸多想法中,有些想法事后回看回发现很糟糕,但是即使它是糟糕的,但是只要继续坚持,好的想法也会接踵而至的

www.levminer.com/blog/tauri-…

三:技巧

  1. JS 调用打印功能 - 知乎
  2. web 打印,一篇搞定 - 知乎
  3. GitHub - LittlehorseXie/nw-printer: 一个基于 nw 纯前端实现的小票打印机程序 (仅支持 windows 系统)
  4. github.com/livelybone/…
  5. HttpPrinter - Web 打印,网页打印,JS 打印,Jquery 打印,浏览器打印,HTML 打印,PDF 打印,Chrome 打印,Firefox 打印,IE 打印,Safari 打印 - 兼容 Windows、Mac、Linux

四:分享

  1. Shedding Bikes: Programming Culture And Philosophy 程序员的常见健康问题