当前位置:网站首页>ARTS_202207W2
ARTS_202207W2
2022-08-01 19:41:00 【cswh】
ARTS 第 3 周
每周完成一个ARTS:
Algorithm:每周做一个 leetcode 的算法题
Review:阅读并点评写作一篇英文技术文章
Tip:学习至少一个技术技巧
Share:分享一篇有观点和思考的技术文章。
Table of Contents
- Algorithm 两数相加
- Review 泛硅谷公司相比传统公司更善用软件工程师
- Tip 截图工具snipaste
- Share 分享博客
Algorithm
leetcode2.两数相加
题目描述:给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。
请你将两个数相加,并以相同形式返回一个表示和的链表。
输入:l1 = 2,4,3, l2 = 5,6,4
输出:7,0,8
解释:342 + 465 = 807
package com.haowang.leetcode;
import com.haowang.TestUtils.UseCase_LinkedList.ListNode;
public class 两数相加_2 {
public static void main(String[] args) {
ListNode l1 = UseCase_LinkedList.createLinkedList(new int[]{2, 4, 3});
ListNode l2 = UseCase_LinkedList.createLinkedList(new int[]{5,6,4});
ListNode sum_ListNode = addTwoNumbers(l1, l2);
UseCase_LinkedList.printLinkedList(sum_ListNode);
ListNode l1_2 = UseCase_LinkedList.createLinkedList(new int[]{9,9,9,9,9,9,9});
ListNode l2_2 = UseCase_LinkedList.createLinkedList(new int[]{9,9,9,9});
ListNode sum_ListNode_2 = addTwoNumbers(l1_2, l2_2);
UseCase_LinkedList.printLinkedList(sum_ListNode_2);
}
public static ListNode addTwoNumbers(ListNode l1, ListNode l2) {
ListNode head = null, tail = null;
int carry = 0;
while (l1 != null || l2 != null) {
int n1 = l1 != null ? l1.val : 0;
int n2 = l2 != null ? l2.val : 0;
int sum = n1 + n2 + carry;
if (head == null) {
head = tail = new ListNode(sum % 10);
} else {
tail.next = new ListNode(sum % 10);
tail = tail.next;
}
carry = sum / 10;
if (l1 != null) {
l1 = l1.next;
}
if (l2 != null) {
l2 = l2.next;
}
}
if (carry > 0) {
tail.next = new ListNode(carry);
}
return head;
}
}为了方便本地IDEA调试,参考了一些资料,可通过方法createLinkedList()本地生成链表结构,printLinkedList()打印链表。详情可见LeetCode构建链表和树的测试用例
Review
文章主题为“泛硅谷公司相对于传统公司更加善用软件工程师“。
原文:What Silicon Valley "Gets" about Software Engineers that Traditional Companies Do Not
泛硅谷公司获得了一些传统公司无法理解或无法在实践中应用的东西。这些实践上的差异,导致公司层面更快创新、工程师更专业的成长和更好的产出。反过来,泛硅谷公司可以支付更高的工资并从同一个人身上获得更多价值。
作者从几个方面,比较了泛硅谷公司与传统公司的差别:
1、软件工程师的自主权
泛硅谷公司传递上下文并赋予自主权,工程师解决业务问题,而不仅是完成分配的任务。
二、好奇的问题解决者,而不是没有想法的资源
传统公司倾向于让工程师一直坐在电脑前编码,充分利用时间。
泛硅谷公司认为软件工程师是最适合解决组织存在的问题的人,不仅仅是专业技能,还包括沟通和解决问题能力;让软件工程师接触业务,完成编码的同时为业务寻找更有影响力的机会。
三、内部数据、代码和文档透明度
四、接触业务和业务指标
泛硅谷公司鼓励工程师与其他业务部门进行互动,并在其他工程师之间建立关系。
五、工程师之间的三角沟通
六、投资于不那么令人沮丧的开发体验
泛硅谷公司改善开发人员工作体验。投资于代码周边事情,如依赖项、环境部署、CI/CD等
七、更高的杠杆-->更高的{自主权、报酬}
更高的自主权 --> 更高的杠杆率 --> 更高的价值创造 --> 更高的薪酬(同时公司仍然盈利)
最后,作者总结了两类公司最大的不同点:泛硅谷公司将工程师视为价值创作者和创造性问题解决者;而传统公司将他们视为工厂工人。("SV-like" companies think of engineers as value generators, and creative problem solvers. Traditional companies think of them as factory workers.“)。而创造性的问题解决者可以带来10倍的价值,给他们更多的报酬,给他们更多的自由是有意义的。
来源湾区日报第1368期上收录文章
Tip
win10上的一款截图软件snipaste,官网
Share
分享一个不错的博客:
湾区日报 https://wanqu.co/
边栏推荐
猜你喜欢

18、分布式配置中心nacos

即时通讯开发移动端弱网络优化方法总结
![58: Chapter 5: Develop admin management services: 11: Develop [admin face login, interface]; (not measured) (using Ali AI face recognition) (demonstrated, using RestTemplate to implement interface cal](/img/ab/1c0adeb344329e28010b6ffda5389d.png)
58: Chapter 5: Develop admin management services: 11: Develop [admin face login, interface]; (not measured) (using Ali AI face recognition) (demonstrated, using RestTemplate to implement interface cal

网络不通?服务丢包?这篇 TCP 连接状态详解及故障排查,收好了~

因斯布鲁克大学团队量子计算硬件突破了二进制

58:第五章:开发admin管理服务:11:开发【管理员人脸登录,接口】;(未实测)(使用了阿里AI人脸识别)(演示了,使用RestTemplate实现接口调用接口;)

哈哈!一个 print 函数,还挺会玩啊!

突破边界,华为存储的破壁之旅

经验共享|在线文档协作:企业文档处理的最佳选择

Compse编排微服务实战
随机推荐
力扣刷题之移动零
【kali-信息收集】(1.5)系统指纹识别:Nmap、p0f
PROE/Croe如何编辑已完成的草图,让其再次进入草绘状态
数据可视化
不恰当Equatable协议==方法的实现对SwiftUI中@State修饰属性的影响
Mobile Zero of Likou Brush Questions
MLX90640 Infrared Thermal Imager Temperature Measurement Module Development Notes (Complete)
BN BatchNorm + BatchNorm的替代新方法KNConvNets
XSS靶场中级绕过
10 个 PHP 代码安全漏洞扫描程序
第59章 ApplicationPart内置依赖注入中间件
Write code anytime, anywhere -- deploy your own cloud development environment based on Code-server
When installing the GBase 8c database, the error message "Resource: gbase8c already in use" is displayed. How to deal with this?
短视频软件开发,Android开发,使用Kotlin实现WebView
Heavy cover special | intercept 99% malicious traffic, reveal WAF offensive and defensive drills best practices
MySQL开发技巧——并发控制
mysql自增ID跳跃增长解决方案
57:第五章:开发admin管理服务:10:开发【从MongoDB的GridFS中,获取文件,接口】;(从GridFS中,获取文件的SOP)(不使用MongoDB的服务,可以排除其自动加载类)
Win11如何删除升级包?Win11删除升级包的方法
【webrtc】sigslot : 继承has_slot 及相关流程和逻辑