'''
1.买卖股票的最佳时机给定一个数组,它的第?i?个元素是一支给定股票第?i?天的价格。
如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。
注意你不能在买入股票前卖出股票。(5分)
要求:
1.输入: [7,1,5,3,6,4]
2.输出: 5
3.解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。
4.注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。
'''
class Solution:
def maxProfit(self, prices): max_profit1 = 0
if len(prices) <= 1:
return max_profit1 min_profit = prices[0]
max_profit2 = 0
for index in range(len(prices)):
if prices[index] <= min_profit:
min_profit = prices[index]
elif prices[index] - min_profit > max_profit2:
max_profit2 = prices[index] - min_profit
return max_profit2 '''
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
Input: [0,1,0,3,12]
Output: [1,3,12,0,0]
'''
class Solution1:
def moveZeroes(self, nums):
i = j = 0
for i in range(len(nums)):
if nums[i] != 0:
nums[j] , nums[i]= nums[i] , nums[j]
j += 1 '''
抓了a,b,c,d四名犯罪嫌疑人,其中有一人是小偷,审讯中:
?a说 我不是小偷;
?b说 c是小偷;
?c说 小偷肯定是d;
?d说 c胡说!
其中有三个人说的是实话,一个人说的是假话,请编程推断谁是小偷(用穷举法和逻辑表达式)
''' for i in range(4):
i += 1
if 3 == ((i != 1) + (i == 3) + (i == 4) + (i != 4)):
# 利用ascii码表输出
str = chr(96 + i) + "是小偷!"
print(str)
请手写插入查找算法,并且用注释写出思路,并且指出时间复杂度 def charu(nums,order = 1):
#第一个数不动,从第二个数开始比较
for i in range(1,len(nums)):
j=i-1
tmp = nums[i] #记录本次待比较的词语
while j >= 0:
if tmp < nums[j]:
nums[j+1] = nums[j]
nums[j] = tmp
j = j-1
else:
break
if order == 1:
return nums
else:
return nums[::-1] 有1、2、3、4、5、6、7、8、9、10个数字,能组成多少个互不相同且无重复数字的五位数?都是多少? a = [1,2,3,4,5,6,7,8,9,10]
def test2(a):
i = 0
for a in range(1, 5):
for b in range(1, 5):
for c in range(1, 5):
if a != b != c:
A = (a * 100 + b * 10 + c)
i += 1
print(A)
print("一共有" + str(i) + "种排列") 2. 二分查找 1.def bin_search(data_set,val):
2. low = 0
3. high = len(data_set)-1
4. while low <= high:
5. mid = (low+high)//2 # 整除2
6. if data_set[mid] == val: # 如果等于要查找的值,返回下标
7. return mid
8. elif data_set[mid] < val: # 如果列表中间的值小于需要的值
9. low = mid + 1 # 则把最小的下标改成mid+1
10. else: # 如果列表中间的值大于需要的值
11. high = mid - 1 # 则把最大的下标改成mid-1
12. return # 如果没找到return空
zhengze_phone=r'1[\d]{10}'
r'[\w]+@[\w]+\.[\w]{2,3}'

代码.py

python:面试算法题的更多相关文章

  1. Python面试真题答案或案例

    Python面试真题答案或案例如下: 请等待. #coding=utf-8 #1.一行代码实现1--100之和 print(sum(range(1,101))) #2.如何在一个函数内部修改全局变量 ...

  2. python经典面试算法题1.4:如何对链表进行重新排序

    本题目摘自<Python程序员面试算法宝典>,我会每天做一道这本书上的题目,并分享出来,统一放在我博客内,收集在一个分类中. 1.4 对链表按照如下要求重新排序 [微软笔试题] 难度系数: ...

  3. python经典面试算法题1.3:如何计算两个单链表所代表的数之和

    本题目摘自<Python程序员面试算法宝典>,我会每天做一道这本书上的题目,并分享出来,统一放在我博客内,收集在一个分类中. 1.2 如何实现链表的逆序 [华为笔试题] 难度系数:⭐⭐⭐ ...

  4. python经典面试算法题1.2:如何从无序链表中移除重复项

    本题目摘自<Python程序员面试算法宝典>,我会每天做一道这本书上的题目,并分享出来,统一放在我博客内,收集在一个分类中. 1.2 如何实现链表的逆序 [蚂蚁金服面试题] 难度系数:⭐⭐ ...

  5. python经典面试算法题4.1:如何找出数组中唯一的重复元素

    本题目摘自<Python程序员面试算法宝典>,我会每天做一道这本书上的题目,并分享出来,统一放在我博客内,收集在一个分类中. [百度面试题] 难度系数:⭐⭐⭐ 考察频率:⭐⭐⭐⭐ 题目描述 ...

  6. python经典面试算法题1.1:如何实现链表的逆序

    本题目摘自<Python程序员面试算法宝典>,我会每天做一道这本书上的题目,并分享出来,统一放在我博客内,收集在一个分类中. 1.1 如何实现链表的逆序 [腾讯笔试题] 难度系数:⭐⭐⭐ ...

  7. 数百道BAT等大厂最新Python面试真题,学到你手软!

    春招临近,无论是要找工作的准毕业生,还是身在职场想要提升自己的程序员,提升自己的算法内功心法.提升 Python 编程能力,总是大有裨益的.今天,小编发现了一份好资源:Python 实现的面试题集锦! ...

  8. python在算法题中判断输入结束(EOF)

    有些算法题是这样要求的,一行输入一行数据,然后没有规定我要输入多少行,你要自行判断文件结束EOF,否则是会runtime error的,因为oj内部都是用文件来进行读写的. 例如a+b,每一行输入a ...

  9. 合并K个有序数组(链表)【字节跳动面试算法题】

    本题是本人字节跳动一面考的算法题原题是有序数组,一时没想到怎么解决数组的问题,但是如果给的是有序链表数组,则可以用下面的方法解决 可以利用最小堆完成,时间复杂度是O(nklogk),具体过程如下: 创 ...

随机推荐

  1. 0120 springboot集成Mybatis和代码生成器

    在日常开发中,数据持久技术使用的架子使用频率最高的有3个,即spring-jdbc , spring-jpa, spring-mybatis.详情可以看我之前的一篇文章spring操作数据库的3个架子 ...

  2. Spring作用域和BeenFactory

    1.Spring Bean实例作用域: ① singleton:   IOC容器仅创建一个Bean实例,IOC容器每次返回的是同一个Bean实例. ② prototype:   IOC容器可以创建多个 ...

  3. 一些docker资料汇总

    安装vmtools https://blog.csdn.net/qq_37764098/article/details/95538813 挂载vm共享文件夹 https://www.cnblogs.c ...

  4. openresty入门文章(笔者自用)

    推荐好的openresty入门介绍文章:https://www.cnblogs.com/digdeep/p/4859575.html  

  5. jsp连接数据库增删改查

    一,创建表 二.将jar包复制导入到lib文件夹下 三.创建工具包连接数据库 package com.bill.util; import java.sql.Connection; import jav ...

  6. Supervision meeting notes 2019/11/29

    topic 分支:  1. subgraph/subsequence mining Wang Jin, routine behavior/ motif. Philippe Fournier Viger ...

  7. IntelliJ IDEA 2017.3百度-----树状结构

    ------------恢复内容开始------------ ------------恢复内容结束------------

  8. spring(四):Resource

    Resource Spring的Resource接口代表底层外部资源,提供了对底层外部资源的一致性访问接口. public interface Resource extends InputStream ...

  9. Flask-SQLAlchemy笔记(一):通过query语句获取关注用户的帖子

    一,预先定义内容 #关联表followers = db.Table('followers', db.Column('follower_id', db.Integer, db.ForeignKey('u ...

  10. optm.adam

    optm.adam 待办 https://www.cnblogs.com/dylancao/p/9878978.html 这个优化包 理解求导过程,来理解神经网络.