技术周报 | 2021年第10周

简介: 技术周报 | 2021年第10周

NDK


1、学习内容

  • C 语言复习(100 %)

2、输出文章


题解 提示 & 思路
《NDK | C 语言复习笔记》 记住最重要的点



算法 & 数据结构


1、LeetCode 打卡

2、输出文章


题解 提示 & 思路
《算法 | 计算器系列》 先将中缀表达式转换为逆波兰表达式,再求解逆波兰表达式



逻辑题


找出有毒瓶子问题


有 15 个瓶子,每个瓶子装满了液体,其中最多有 1 个瓶子的液体有毒。现在有 4 只老鼠,如果老鼠喝到有毒的液体,一个星期后会挂掉。

现给你一个星期时间,找出有毒的瓶子。


  • 1、将编号为 1、2、3 …15 的瓶子,转为二进制数编号,例如:1 -> 0001、2 -> 0010、3 -> 0011、… 、5 -> 1111
  • 2、四只老鼠对应四个「二进制位置」,如果二进制编号上为 1 ,则将该瓶液体喂给对应位置的老鼠;
  • 3、一周后,看对应位置的老鼠状态,活着填0,挂掉填1
  • 4、将二进制转换为十进制,就得到有毒瓶子的编号。


Android


  • Android 12 Developer Preview 特性梳理 (40%)


扩展阅读


《 “无代码” 与我们的距离》 —— ISUX 著


“无代码” 指的是无代码开发平台(NCDP,No-Code Development Platform),本质上是通过图形用户界面这种可视化的形式替代程序员一行行编写代码的传统开发方式。这意味着研发上游的产品经理和设计师可能比开发人员更需要关注 “无代码” 趋势对未来产品形态带来的影响。

优点:低门槛、低成本、高效率。

在面对需要为非专业用户提供无代码平台的设计时,如何简化复杂,把握非专业用户的心智模型而跳出专业开发者和设计师自身的思维习惯,是实践中会遇到的挑战。


《腾讯文档 | 数据化设计》 —— ISUX 著


数据是什么 / 数据是怎么产生的:二手资料数据 + 问卷调研数据 + 应用埋点数据

应用埋点类型:曝光埋点 + 操作埋点 + 时长,基于这三类原始数据,可以计算出点击率、功能渗透率、人均点击次数、人均使用时长等具有对比价值的数据。

  • 曝光埋点:页面或条目展示的次数;
  • 操作埋点:对某一区域(按钮、卡片、提示条等)进行手势操作(点击、双击、长按、滑动等);
  • 时长埋点:标记以上两类埋点的时间差来获得。

数据分析在 UX 设计中的作用:

  • 1、需求评审:以提升最终业务数据为目标,评估需求的价值贡献和优先级;
  • 2、需求挖掘:数据作为产品健康度的体检指标,为设计圈定问题域;
  • 3、设计决策:借鉴用户行为数据,对方案进行快速决策;
  • 4、设计实验:采用数据实验对设计方案进行择优或改进。


《程序员成长路线》 —— 毕玄 著


编程能力成长:

  • 初级:会用
  • 中级:会查问题和避免问题
  • 高级:懂得高级 API 和原理

系统设计能力的要点:

  • 1、子系统职责划分: 在超大型技术方案中,很容易出现某些部分职责重叠和冲突,如何划分子系统非常重要;
  • 2、控制系统风险 超大型系统设计一定是多个专业领域的架构师和大架构师共同设计,怎么确保在执行的过程中系统最重要的风险能够被控制住。这个时候需要在设计中考虑和遵守系统设计原则(例如:最基本的原则是接受系统不可用,但也要保证数据一致)。
  • 3、考虑问题全面性: 超大型系统设计会涉及业务层面、各种基础技术层面、基础设施层面,它的执行节奏也需要综合考虑人力投入、机器成本、基础设施布局述求、稳定性控制等。

系统设计能力成长的重点:

  • 1、现在一两个技术领域做到专业,然后尽量扩大自己的知识广度;
  • 2、练习自己做 tradeoff 的能力。


《Beginner's Mind》 —— 孟岩 著


我们在学习知识的时候,并不是凭空学习新知识,而是根据我们大脑中已有的知识,来解读我们读到的新东西。一方面,这会加快我们理解新知识的过程,也可以帮助我们更好地记忆,构成知识的复利。但是另一方面,如果新知识和旧知识差别过大,也会给我们带来困扰:我们的大脑会本能地抵御这些冲突,选择性的接受大脑认为 “合理” 的知识。

人们对于新事物的会做出不同的反应:有的人对一切好奇,每天都在进化、迭代甚至推翻昨天的自己;有的人像倒满的茶杯,聊天的时候根本不管你在说什么,只想把自己想说的说出来,对于新知识本能排斥。

Pony马曾经说过,做产品要具备 “一秒变小白” 的能力。如果没有 Beginner's Mind,不能真切地体验到用户的困惑和问题,而是按照自己的理解来臆想功能,产品就会出问题。


技术分享


《Kong 网关分享》 —— 刚爷 讲


网关: 外部应用访问内部接口的统一入口;

功能:

  • 1、接入: 接管所有 API 接口服务;
  • 2、聚合: 聚合所有后端业务服务;
  • 3、中介: 实现安全、验证、路由、过滤、流量管控、缓存等策略;
  • 4、管理: 提供日志、A/B 测试、监控等管理。

实现: Nginx、Kong、SpringCloud 等


《归一化算法及应用》 —— 滨哥 讲


归一化: 将数据的值压缩到小区间,例如 [0,1];

价值:

  • 不同指标的可比性
  • 提高模型精度
  • 修正数据收敛速度

实现:

  • 离散标准化:Y=x−XminXmax−XminY = \frac{x - X_{min}}{X_{max} - X_{min}}Y=XmaxXminxXmin。最简单,适合于数据集中,XmaxX_{max}XmaxXminX_{min}Xmin稳定的场景; Z-SCORE 0 均值标准化:Y=x−μσY = \frac{x - \mu}{\sigma}Y=σxμ,其中μ\muμ是均值,σ\sigmaσ是标准差。适用于XmaxX_{max}XmaxXminX_{min}Xmin未知,需要度量数据相似度(分类)的场景;
  • Sigmoid 函数:Y=11+e−xY = \frac{1}{1+e^{-x}}Y=1+ex1。也称逻辑回归函数,收敛曲线平滑;
  • Tanh 双曲正切函数:Y=1−e−2x1+e−2xY = \frac{1-e{-2x}}{1+e^{-2x}}Y=1+e2x1e2x。相比 Sigmoid 函数,收敛速度更快
  • ReLU 线性整流函数:y={x,x>0a(ex−1),x≤0y=\begin{cases}x,&x>0\\a(e^x-1),&x\leq0\end{cases}y={x,a(ex1),x>0x0。在 x>0x >0x>0 区间是一个线性函数,不存在 Sigmoid 函数的梯度消失问题。

应用场景: 列表排序。

目录
相关文章
|
2月前
获得月份天数
获得月份天数
52 4
根据日期获得当天是星期几?
根据日期获得当天是星期几?
87 0
|
安全 Java Unix
第七周:函数
C语言会是你敲开编程大门的第一个语言吗?
108 0
1185. 一周中的第几天 : 简单日期统计模拟题
1185. 一周中的第几天 : 简单日期统计模拟题
|
C++ Windows
C++程序设计-第18周"务虚性"总结
回到课程主页,链接:C++程序设计课程主页-2012级   本周回顾了整个学其布置的任务,决定在考试即将到来之际,将做什么的问题交给同学们自己决定。
1159 1
|
C#
C#根据当前时间获取周,月,季度,年度等时间段的起止时间
原文:C#根据当前时间获取周,月,季度,年度等时间段的起止时间 最近有个统计分布的需求,需要按统计本周,上周,本月,上月,本季度,上季度,本年度,上年度等时间统计分布趋势,所以这里就涉及到计算周,月,季度,年度等的起止时间了,下面总结一下C#中关于根据当前时间获取周,月,季度,年度等时间段的起止时间的方法,废话不多说,直接贴代码,如果你觉得有用,请多多推荐。
1416 0
|
存储 SQL 索引
第5周 堆表
原文:第5周 堆表 欢迎来到SQL Server性能调优培训的第2个月。这个月将会是最有趣和最有挑战性的一个月,这个月我们专一只谈SQL Server中的索引,索引,还是索引。相信我,值得一个月去学习索引。
1029 0
|
算法 C# 索引
C# 根据年、月、周、星期获得日期等
原文:C# 根据年、月、周、星期获得日期等 [参考] http://blog.csdn.net/livening/article/details/6049341 http://zhidao.baidu.com/question/378600365.html http://www.cnblogs.com/roy117/archive/2008/03/25/1121584.html   楼上几层的代码都太多了,不用那么复杂。
1579 0
|
C++
2014秋C++ 第5周项目 初识C++
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。 【项目1-见识初学者常见错误】下面是最经典和最简单的C++程序。在ideone.com中运行程序,并在能正确运行的程序基础上,“捣乱”制造些错误,对此进行观察。经验是从错误中得来的,这个项目就是要
1197 0