目录
观看覃超第二次分享之记录与总结
CMU金刚课程
15112 CMU 15-112: Fundamentals of Programming and Computer Science
15112
15213 - Introduction to Computing system.
15410 - Operating System Design and Implementation
15410
15440 -Distributed Systems
15440
Machine Learning
Machine Learning
深度学习
Deepleaning
切leetcode题3道
带领大家切了三道题
412
描述:
Write a program that outputs the string representation of numbers from 1 to n.
But for multiples of three it should output “Fizz” instead of the number and for the multiples of five output “Buzz”. For numbers which are multiples of both three and five output “FizzBuzz”.
举例:
n = 15,
Return: [
"1",
"2",
"Fizz",
"4",
"Buzz",
"Fizz",
"7",
"8",
"Fizz",
"Buzz",
"11",
"Fizz",
"13",
"14",
我的解决思路
class Solution(object):
def fizzBuzz(self, n):
"""
:type n: int
:rtype: List[str]
"""
l = []
for i in range(1, n + 1):
if i % 3 == 0 and i % 5 == 0:
l.append("FizzBuzz")
elif i % 3 == 0:
l.append("Fizz")
elif i % 5 == 0:
l.append("Buzz")
else:
l.append(str(i))
return l
if __name__ == '__main__':
sol = Solution()
n = 15
print(sol.fizzBuzz(n))
github gist 链接
88
描述
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.
注意
You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2. The number of elements initialized in nums1 and nums2 are m and n respectively.
我的解决思路
class Solution(object):
def merge(self, nums1, m, nums2, n):
"""
:type nums1: List[int]
:type m: int
:type nums2: List[int]
:type n: int
:rtype: void Do not return anything, modify nums1 in-place instead.
"""
i = m - 1
j = n - 1
k = m + n - 1
while i >= 0 and j >= 0:
if nums1[i] > nums2[j]:
nums1[k] = nums1[i]
k -= 1
i -= 1
else:
nums1[k] = nums2[j]
k -= 1
j -= 1
while j >= 0:
nums1[k] = nums2[j]
k -= 1
j -= 1
if __name__ == '__main__':
sol = Solution()
nums1 = [0, 1, 4, 5, 6, 0, 0, 0, 0]
nums2 = [2, 3, 6, 7]
sol.merge(nums1, 5, nums2, 4)
print(nums1)
github gist链接
41
描述
Given an unsorted integer array, find the first missing positive integer.
举例
Given [1,2,0] return 3,
and [3,4,-1,1] return 2.
Your algorithm should run in O(n) time and uses constant space.
我的解决思路
class Solution(object):
def firstMissingPositive(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
max_num = len(nums) + 1
nums_set = set(nums)
for i in range(1, max_num):
if i not in nums_set:
return i
return max_num
if __name__ == '__main__':
sol = Solution()
x = [10, 11, 12, 0, 0, 0]
y = [1, 2, 0]
print(sol.firstMissingPositive(y))
github gist链接
代码review
代码不能写得又长又臭,自己的代码写得太烂了。
1.谷歌C++代码风格指南
2.谷歌Python代码风格指南
3.PEP 8 -- Style Guide for Python Code
4.在线交流code
collabedit