华为python面试题


Posted in 面试题 onMay 03, 2016
有两个序列a,b,大小都为n,序列元素的值任意整形数,无序;
要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。
1. 将两序列合并为一个序列,并排序,为序列Source
2. 拿出最大元素Big,次大的元素Small
3. 在余下的序列S[:-2]进行平分,得到序列max,min
4. 将Small加到max序列,将Big加大min序列,重新计算新序列和,和大的为max,小的为min。
Python代码
def mean( sorted_list ):
if not sorted_list:
return (([],[]))
big = sorted_list[-1]
small = sorted_list[-2]
big_list, small_list = mean(sorted_list[:-2])
big_list.append(small)
small_list.append(big)
big_list_sum = sum(big_list)
small_list_sum = sum(small_list)
if big_list_sum > small_list_sum:
return ( (big_list, small_list))
else:
return (( small_list, big_list))
tests = [ [1,2,3,4,5,6,700,800],
[10001,10000,100,90,50,1],
range(1, 11),
[12312, 12311, 232, 210, 30, 29, 3, 2, 1, 1]
]
for l in tests:
l.sort()
print
print “Source List:\t”, l
l1,l2 = mean(l)
print “Result List:\t”, l1, l2
print “Distance:\t”, abs(sum(l1)-sum(l2))
print ‘-*’*40
输出结果
Python代码
Source List: [1, 2, 3, 4, 5, 6, 700, 800]
Result List: [1, 4, 5, 800] [2, 3, 6, 700]
Distance: 99
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
Source List: [1, 50, 90, 100, 10000, 10001]
Result List: [50, 90, 10000] [1, 100, 10001]
Distance: 38
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
Source List: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Result List: [2, 3, 6, 7, 10] [1, 4, 5, 8, 9]
Distance: 1
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
Source List: [1, 1, 2, 3, 29, 30, 210, 232, 12311, 12312]
Result List: [1, 3, 29, 232, 12311] [1, 2, 30, 210, 12312]
Distance: 21
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

Tags in this post...

面试题 相关文章推荐
一份比较全的PHP面试题
Jul 29 面试题
宝信软件JAVA工程师面试经历
Aug 19 面试题
Java面试中常遇到的问题,也是需要注意的几点
Aug 30 面试题
最新远光软件笔试题面试题内容
Nov 08 面试题
如何保障Web服务器安全
May 05 面试题
abstract 可以和 virtual 一起使用吗?可以和 override 一起使用吗?
Oct 15 面试题
软件测试工程师笔试题带答案
Mar 27 面试题
JDBC操作数据库的基本流程是什么
Oct 28 面试题
几个判断型的面试题
Jul 03 面试题
北京振戎融通Java面试题
Sep 03 面试题
ruby如何进行集成操作?Ruby能进行多重继承吗?
Oct 16 面试题
Delphi软件工程师试题
Jan 29 面试题
Python面试题:Python是如何进行内存管理的
Aug 04 #面试题
Python的两道面试题
Jun 29 #面试题
Python面试题:Python里面如何生成随机数
Mar 12 #面试题
Python是如何进行类型转换的
Jun 09 #面试题
Python里面如何实现tuple和list的转换
Jun 13 #面试题
Python文件操作的面试题
Jun 22 #面试题
Python如何实现单例模式
Jun 03 #面试题
You might like
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
2011/10/31 PHP
PHP 清空varnish 缓存的详解(包括指定站点下的)
2013/06/20 PHP
PHP的mysqli_rollback()函数讲解
2019/01/23 PHP
php实现的表单验证类完整示例
2019/08/13 PHP
ECMAScript 基础知识
2007/06/29 Javascript
前端开发的开始---基于面向对象的Ajax类
2010/09/17 Javascript
javascript attachEvent绑定多个事件执行顺序问题
2010/10/20 Javascript
设为首页加入收藏兼容360/火狐/谷歌/IE等主流浏览器的代码
2013/03/26 Javascript
node.js中的fs.readdirSync方法使用说明
2014/12/17 Javascript
轻松掌握JavaScript状态模式
2016/09/07 Javascript
原生javascript上传图片带进度条【实例分享】
2017/04/06 Javascript
vue component组件使用方法详解
2017/07/14 Javascript
基于vue+axios+lrz.js微信端图片压缩上传方法
2019/06/25 Javascript
这应该是最详细的响应式系统讲解了
2019/07/22 Javascript
详解uniapp的全局变量实现方式
2021/01/11 Javascript
Vue中避免滥用this去读取data中数据
2021/03/02 Vue.js
[01:21]DOTA2周边文化主题展 神秘商店火热开售
2017/07/30 DOTA
python网络编程学习笔记(五):socket的一些补充
2014/06/09 Python
Python循环语句之break与continue的用法
2015/10/14 Python
深入理解Python单元测试unittest的使用示例
2017/11/18 Python
Python查找文件中包含中文的行方法
2018/12/19 Python
pytorch 模型可视化的例子
2019/08/17 Python
tensorflow中tf.reduce_mean函数的使用
2020/04/19 Python
Python使用多进程运行含有任意个参数的函数
2020/05/02 Python
keras 获取某层的输入/输出 tensor 尺寸操作
2020/06/10 Python
python实现自动打卡的示例代码
2020/10/10 Python
html2canvas把div保存图片高清图的方法示例
2018/03/05 HTML / CSS
英国屋顶用品和材料超市:Roofing Supplies UK
2019/08/24 全球购物
物业工作计划书
2014/01/10 职场文书
十八届三中全会感言
2014/03/10 职场文书
群众路线领导干部个人对照检查材料(集锦)
2014/09/23 职场文书
群众路线教育实践活动总结
2014/10/30 职场文书
优秀教育工作者事迹材料
2014/12/24 职场文书
公司员工辞职信范文
2015/05/12 职场文书
解决Swagger2返回map复杂结构不能解析的问题
2021/07/02 Java/Android
Windows环境下实现批量执行Sql文件
2021/10/05 SQL Server