每天一道算法题

每天一道算法题(第一期)

2019-10-18  本文已影响0人  鸡汤小弟

如果每天做一道算法题,那是不是每天都在进步?

前言

这个活动是从2019年7月中旬开始的,人数不算多,也就几个好友和好友的好友,过程中也会有人因为工作的缘故或其他原因放弃,或许未来还会有人离开。

活动的主要形式就是在leetcode刷题,每个工作日一道题,每周做总结,目前已经是第十二期,接下来我会把每期的题做一个总结,由于我是侧重javascript,所以活动中的每道题都是以js语言来实现解题方法。

活动的规则比较严谨,群里每天早上10点之前发题,晚上10点审核,审核有管理员专门审核,称为打卡,没有打卡的人,需要发红包给管理员作为每天统计费用。

活动的目的就是培养算法思维,了解常见的算法,比如分治算法、贪心算法、动态优化等等。

微信公众号惊天码盗同步第一期

两个数组的交集 II

给定两个数组,编写一个函数来计算它们的交集。

题解:

1比特与2比特字符

有两种特殊字符。第一种字符可以用一比特0来表示。第二种字符可以用两比特(10 或 11)来表示。

现给一个由若干比特组成的字符串。问最后一个字符是否必定为一个一比特字符。给定的字符串总是由0结束。

题解:

二进制求和

给定两个二进制字符串,返回他们的和(用二进制表示)。
输入为非空字符串且只包含数字 1 和 0。

题析:

面对这道题,很多人立马想到的是2转10,然后转2,但是这会面临精度丢失的问题,如果解决了精度丢失的问题,那么也不失为一个好的解题方法。那么就只有一种方法那就是逐位相加法。

题解:

两数之和

给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。

你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

题解:

加一

给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。
你可以假设除了整数 0 之外,这个整数不会以零开头。

题解:

第一期结束,下期见。如果有一起学习的朋友,可以加微信群。


每天一道算法题(第一期) 镇楼
上一篇 下一篇

猜你喜欢

热点阅读