ARTS第八周

Algorithm

// https://leetcode.com/problems/path-sum-iii/description/
function helper(root, acc, target, hashmap) {
  if (root === null) return 0;
  let count = 0;
  acc += root.val;
  if (acc === target) count++;
  if (hashmap[acc - target] !== void 0) {
    count += hashmap[acc - target];
  }
  if (hashmap[acc] === void 0) {
    hashmap[acc] = 1;
  } else {
    hashmap[acc] += 1;
  }
  const res =
    count +
    helper(root.left, acc, target, hashmap) +
    helper(root.right, acc, target, hashmap);

    // 这里要注意别忘记了
    hashmap[acc] = hashmap[acc] - 1;

    return res;
}

var pathSum = function(root, sum) {
  // 时间复杂度和空间复杂度都是O(n)
  const hashmap = {};
  return helper(root, 0, sum, hashmap);
};

review

review:https://mp.weixin.qq.com/s/TjDVKE9_EBuR4oZbW9OOig

主要讲解了webview,到RN,weex,到flutter

Flutter 凌空出世,通过自绘 UI 组件,构建高质量跨平台组件库,解决了此类框架难以解决的双端一致性, Bridge 通信效率等问题。并提供丰富的 Widget 组件,渲染性与 Native UI 相媲美,掀起了大家对下一代跨平台技术探索的热情。同时对国内闲鱼、GCanvas、支付宝、Weex 等都投入了不少研究,通过 Flutter 打造自己的渲染引擎,支持 APP 内业务、小程序等业务。下一代跨平台技术非 Flutter 莫属吗?基于 Flutter 引擎有哪些误区?有木有性能媲美 Flutter 的跨平台渲染技术?本文通过阐述跨平台 UI 渲染引擎的历史,并且实际研究探索构建下一代跨平台 UI 渲染引擎。

tip

平常还是要多关注使用的第三方库或者框架的版本升级信息,这两天做react项目升级,其中react15,升级到react16.8,react部分还好,主要就是createClass,以及不能使用ref="11111"这样的方式,别的没有太多问题,然后router从3到4的时候,大功能上的坑也好改,有个细节的地方,报错也不报,但是一致影响,排错很久,才知道,props.location上,router3的时候,有一个query属性,会把url上,?的后面的给解析成对象,ruoter4却没有了。只有一个search了

share

当有复杂运算,会阻塞当前js线程影响ui渲染的时候,可以使用这个api,Web Worker,Web Worker为Web内容在后台线程中运行脚本提供了一种简单的方法。线程可以执行任务而不干扰用户界面。

https://developer.mozilla.org/zh-CN/docs/Web/API/Web_Workers_API/Using_web_workers

你可能感兴趣的:(架构设计之路)