ARTS #82 Algorithm 本周选择的算法题是:Multiply Strings 规则 Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and num2, also represented as a string. Note: You must n...
微信公众号 近期创建了一个微信公众号。 没啥目的,就想亲自试下微信的生态圈,看看相关工具的建设程度,毕竟公众号火了这么多年,红利都快没了,作为互联网人都没尝试过有些说不过去。 我一直认为自己是一个较为自律的人: 在扇贝、多邻国上保持500+天的连续打卡 每周的 ARTS 作业,目前到 #82 了 每天一道 checkio … ps:某次公司聚餐时,喝吐了三次,强忍着剧...
ARTS #81 Algorithm 本周选择的算法题是:Group Anagrams 规则 Given an array of strings strs, group the anagrams together. You can return the answer in any order. An Anagram is a word or phrase formed by rearranging t...
为 GitHub 提供 Owner 维度的文件过滤 本文介绍一个通过 Chrome 插件在 GitHub 上实现 Owner 维度的文件过滤功能。 背景 我们的代码库托管在 GitHub 企业版上,内部有一套明确的 Code Review 制度,按模块、目录、文件等不同的粒度划分具体的负责人或团队,保证所有代码的修改、变更是被允许的。 而由于 GitHub 只能以文件类型为维度过滤列表,如下图: 当 PR 文件过多时很难让对应的 ...
ARTS #80 Algorithm 本周选择的算法题是:Day 1: Report Repair 规则 Part1 … Specifically, they need you to find the two entries that sum to 2020 and then multiply those two numbers together. For example, supp...
CI 物理架构 这一篇介绍稿定客户端持续集成的物理架构。 目前整体的设计是这样的: 在我们引入容器、虚拟化之前的很长一段时间,我们的 CI 基础设施都处于雪花服务器的状态: 手动管理一堆服务器 手动登陆每台服务器 手动安装众多软件 手动修改各种配置文件 导致每台服务器如同雪花一样独特,各服务器配置千差万别难以复制。 为了减少这些机器带来的维护成本,我们做了一些调研。 虽然...
ARTS #79 Algorithm 本周选择的算法题是:Swap Nodes in Pairs 规则如下: Given a linked list, swap every two adjacent nodes and return its head. You may not modify the values in the list’s nodes. Only nodes itself may be...
Symlinks on CocoaPods CocoaPods 是一个管理 Xcode 工程依赖的工具,其因为简单易用、功能覆盖广、拓展性强,成为了这个领域最常用的工具之一。不过想让工具完美适配各种 workflow 是不现实的,总归会有一些需要二次开发的东西,这一篇就是我们在实现环境切换时,如何利用它的特性达到最终目的的记录。 背景 Flutter 支持三种编译模式: debug - 开发时使用,支持 hot reloa...
ARTS #78 | 设计模式的背后 Algorithm 本周选择的算法题是:Generate Parentheses 规则如下: Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. Example 1: Input: n = 3 Output: ["((()))"...
ARTS #77 | Start with Why Algorithm 本周选择的算法题是:Remove Nth Node From End of List 规则如下: Given the head of a linked list, remove the nth node from the end of the list and return its head. Follow up: Could you do this in one...