先说一个消息,为了方便互相交流学习,青铜三人行建了个微信群,感兴趣的伙伴可以扫码加下面的小助手抱你入群哦!
每周一题,代码无敌~ 这次的主题是 「贪心算法」:
不知不觉青铜三人行已经做了两个月的题了,这次轻松点,看看不一样的吧。
作为专业的程序猿,经常被行业外的朋友问到,为什么要学习编程?其实,除了掌握技能提高工作效率、甚至成为职业以外。学习编程更重要的是:思维训练。
其实,计算机从一开始就是为了帮助人们解决复杂问题而设计出来的。而在这个过程中,计算机程序的「思考」模型是一个叫“图灵机”的计算模型,图灵机是图灵 (Alan Mathison Turing) 祖师爷模拟人思考而发明出来的。为什么图灵祖师爷要发明图灵机呢?是因为他想要试图以自己和自己周围的天才科学家的思维方式作为人类的具体实例,来抽象总结出一套解决问题的办法。所以说,计算机程序的运作方式其实是一种人类尝试用简单的方式逐步去解决复杂问题的天才的思考方式。
每周一题,代码无敌~
这次让我们回到算法本身,来探讨一下回溯算法:
给定一个无重复元素的数组 candidates
和一个目标数 target
,找出 candidates
中所有可以使数字和为 target
的组合。
candidates
中的数字可以无限制重复被选取。
每周一题,代码无敌。这周,「青铜三人行」为你带来了一道关于“链表的题目”。
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。
给定一个链表: 1 -> 2 -> 3 -> 4 -> 5, 和 n = 2;
当删除了倒数第二个节点后,链表变为 1 -> 2 -> 3 -> 5。
给定的 n 保证是有效的。
你能尝试使用一趟扫描实现吗?
哈喽,大家好,欢迎来到青铜三人行的每周一题现场。在接下来的时间里,我们三人(Helen、书香、曾大师)会在每周选择一道编程算法题来完成,和大家一起探讨一下解题的思路。所谓每周一题,代码无敌,欢迎各位小伙伴们一起进入我们的刷题之旅~
因为个人水平有限,我们的解法不一定是最优的,只是希望抛转引用,分享自己的思路,带动和大家一起练习编程技能。大家有任何建议,也可以通过 [email protected] 邮箱联系我们~
Update your browser to view this website correctly. Update my browser now