[入门级]lintcode--刷题
2018-10-21 本文已影响0人
慕止
第一题
反转一个只有3位数的整数。
你可以假设输入一定是一个只有三位数的整数,这个整数大于等于100,小于1000。
您在真实的面试中是否遇到过这个题?
样例
123 反转之后是 321。
900 反转之后是 9。
class Solution:
"""
@param number: A 3-digit number.
@return: Reversed number.
"""
def reverseInteger(self, number):
# write your code here
l = list(str(number))
s = str(l[2]+l[1]+l[0]).replace('0', '')
return int(s)
print(Solution().reverseInteger(123))
print(Solution().reverseInteger(900))
第二题
将一个字符由小写字母转换为大写字母
你可以假设输入一定在小写字母 a ~ z 之间
您在真实的面试中是否遇到过这个题?
样例
a -> A
b -> B
class Solution:
"""
@param character: a character
@return: a character
"""
def lowercaseToUppercase(self, character):
# write your code here
return character.upper()
print(Solution().lowercaseToUppercase('b'))
第三题
描述
实现一个矩阵类Rectangle,包含如下的一些成员变量与函数:
两个共有的成员变量 width 和 height 分别代表宽度和高度。
一个构造函数,接受2个参数 width 和 height 来设定矩阵的宽度和高度。
一个成员函数 getArea,返回这个矩阵的面积。
您在真实的面试中是否遇到过这个题?
样例
Java:
Rectangle rec = new Rectangle(3, 4);
rec.getArea(); // should get 12
Python:
rec = Rectangle(3, 4)
rec.getArea()
class Rectangle:
'''
* Define a constructor which expects two parameters width and height here.
'''
# write your code here
'''
* Define a public method `getArea` which can calculate the area of the
* rectangle and return.
'''
# write your code here
def __init__(self, width, height):
self.width = width
self.height = height
def getArea(self):
return self.width * self.height
rec = Rectangle(5,6)
rec.getArea()
第四题
描述
给一组整数,按照升序排序,使用选择排序,冒泡排序,插入排序或者任何 O(n2) 的排序算法。
您在真实的面试中是否遇到过这个题?
样例
对于数组 [3, 2, 1, 4, 5], 排序后为:[1, 2, 3, 4, 5]。
class Solution:
"""
@param A: an integer array
@return: nothing
"""
def sortIntegers(self, A):
# write your code here
return A.sort()
print(Solution().sortIntegers([3, 2, 1, 4, 5]))
第五题
描述
计算链表中有多少个节点.
您在真实的面试中是否遇到过这个题?
样例
给出 1->3->5, 返回 3.
class Solution:
"""
@param head: the first node of linked list.
@return: An integer
"""
def countNodes(self, head):
# write your code here
return len(head.replace('->', ''))
print(Solution().countNodes('1->3->5->1->3->5'))
第六题
class Solution:
"""
@param A: An integer array
@param index1: the first index
@param index2: the second index
@return: nothing
"""
def swapIntegers(self, A, index1, index2):
# write your code here
class Solution:
"""
@param A: An integer array
@param index1: the first index
@param index2: the second index
@return: nothing
"""
def swapIntegers(self, A, index1, index2):
# write your code here
a=A[index1]
A[index1]=A[index2]
A[index2]=a
return A
print(Solution().swapIntegers([1,2,3,4],2,3))