矩阵变换::

请用一条语句将:
arr = [[1, 2, 3, 'a'], [4, 5, 6, 'b'], [7, 8, 9, 'c']]
转换装置矩阵为: [[1, 4, 7], [2, 5, 8], [3, 6, 9], ['a', 'b', 'c']] [ [ each[i] for each in arr] for i in range(len(arr[0])) ]

排序bin

请写一个函数将一个字符串列表进行排序, 这些字符串都含有数字的子串.
若按默认的排序, 'foo10.txt'会排在'foo2.txt'之前(因为'1'比'2'小), 现在需要将'foo2.txt'排在'foo10.txt'之前,
因为2比10小. 请写出这个函数(可以额外多写其他辅助函数,可以用python的各种库) 输入比如: files = 'file3.txt file11.txt file7.txt file4.txt file15.txt'.split()
调用函数: result = sort_strings(files)
result就应该是列表: ['file3.txt', 'file4.txt', 'file7.txt', 'file11.txt', 'file15.txt'] sort(key = lambda item: int(item[:-4][4:]))

托管类

设计一个简单通用的托管类Proxy, 创建实例(p)时传入其他类实例(orig),即可以通过p调用所有orig的方法.
例如: class Hello(object):
def __init__(self, name):
self.name = name def hello(self):
print 'hello', self.name class Proxy(object):
... h = Hello('world')
p = Proxy(h)
p.hello() # 应该间接调用h.hello(), 输出"hello world"
print p.name # 应该打印:world
p.name = 'jobs'
p.hello() # 应该间接调用h.hello(), 输出"hello jobs" 请设计Proxy类. 注:不能简单为Proxy写简单hello方法. class Proxy(object): def __init__(self, some_obj):
method_of_proxy_obj = [(method,getattr(some_obj, method)) for method in dir(some_obj) if callable(getattr(some_obj, method)) and not method.startswith('__')]
for method_tuple in method_of_proxy_obj:
name = method_tuple[0]
method_obj = method_tuple[1]
setattr(self, name, method_obj)

找到 100 万个数字中的第100个大的数字

1. split 100万数字为100份
2. 找出每一份中的前100个
3. 把这些数字组合起来排序,找出前100个 这里的逻辑是,前100个数字,必定包含在每一份的前100个中。要证明这个可以用反证法,
假设 n 属于前100 但是n 不在某一份的前100个数中。
那么, 该份的前100都比n大,所以n就不可能是这100万个数的前一百。

some 算法的更多相关文章

  1. B树——算法导论(25)

    B树 1. 简介 在之前我们学习了红黑树,今天再学习一种树--B树.它与红黑树有许多类似的地方,比如都是平衡搜索树,但它们在功能和结构上却有较大的差别. 从功能上看,B树是为磁盘或其他存储设备设计的, ...

  2. 分布式系列文章——Paxos算法原理与推导

    Paxos算法在分布式领域具有非常重要的地位.但是Paxos算法有两个比较明显的缺点:1.难以理解 2.工程实现更难. 网上有很多讲解Paxos算法的文章,但是质量参差不齐.看了很多关于Paxos的资 ...

  3. 【Machine Learning】KNN算法虹膜图片识别

    K-近邻算法虹膜图片识别实战 作者:白宁超 2017年1月3日18:26:33 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  4. 红黑树——算法导论(15)

    1. 什么是红黑树 (1) 简介     上一篇我们介绍了基本动态集合操作时间复杂度均为O(h)的二叉搜索树.但遗憾的是,只有当二叉搜索树高度较低时,这些集合操作才会较快:即当树的高度较高(甚至一种极 ...

  5. 散列表(hash table)——算法导论(13)

    1. 引言 许多应用都需要动态集合结构,它至少需要支持Insert,search和delete字典操作.散列表(hash table)是实现字典操作的一种有效的数据结构. 2. 直接寻址表 在介绍散列 ...

  6. 虚拟dom与diff算法 分析

    好文集合: 深入浅出React(四):虚拟DOM Diff算法解析 全面理解虚拟DOM,实现虚拟DOM

  7. 简单有效的kmp算法

    以前看过kmp算法,当时接触后总感觉好深奥啊,抱着数据结构的数啃了一中午,最终才大致看懂,后来提起kmp也只剩下“奥,它是做模式匹配的”这点干货.最近有空,翻出来算法导论看看,原来就是这么简单(先不说 ...

  8. 神经网络、logistic回归等分类算法简单实现

    最近在github上看到一个很有趣的项目,通过文本训练可以让计算机写出特定风格的文章,有人就专门写了一个小项目生成汪峰风格的歌词.看完后有一些自己的小想法,也想做一个玩儿一玩儿.用到的原理是深度学习里 ...

  9. 46张PPT讲述JVM体系结构、GC算法和调优

    本PPT从JVM体系结构概述.GC算法.Hotspot内存管理.Hotspot垃圾回收器.调优和监控工具六大方面进行讲述.(内嵌iframe,建议使用电脑浏览) 好东西当然要分享,PPT已上传可供下载 ...

  10. 【C#代码实战】群蚁算法理论与实践全攻略——旅行商等路径优化问题的新方法

    若干年前读研的时候,学院有一个教授,专门做群蚁算法的,很厉害,偶尔了解了一点点.感觉也是生物智能的一个体现,和遗传算法.神经网络有异曲同工之妙.只不过当时没有实际需求学习,所以没去研究.最近有一个这样 ...

随机推荐

  1. 开发小Tips

    Kotlin语言篇: 1.抽象类的定义 abstract class Person(var name : String, var age : Int) : Any() { abstract var a ...

  2. Java语法基础-异常处理

    异常处理类层次结构图 检查异常与非检查异常 非检查异常(unckecked exception):Error 和 RuntimeException 以及他们的子类.javac在编译时,不会提示和发现这 ...

  3. 唤醒键盘时取消对特定类的position:fixed定位

    /* 唤起键盘时取消对特定类的position:fixed定位 */ var windheight = $(window).height(); /*未唤起键盘时当前窗口高度*/ $(window).r ...

  4. 按键精灵txt判断

      句子 = "度阿斯达娘阿婶是大的百度知道" 词 = "百度知道" MyPos = Instr(句子, 词) If MyPos > 0 Then Tra ...

  5. AngularJS小练习20170508

    首先可能需要安装npm,并且配置环境. 1.打开Dos(命令提示符).按Windows徽标键+R组合键,输入cmd然后按回车键进入Dos. 2.安装Yeoman.在Dos下输入npm install ...

  6. Spring Data Redis入门示例:基于Jedis及底层API (二)

    使用底层API:RedisConnectionFactory和RedisConnection可以直接操作Redis,下面是一个简单的例子: ### Maven依赖 <properties> ...

  7. ubuntu环境安装docker

    查看已安装的docker apt list docker* 如果已安装,并且需要卸载,则执行以下命令: apt remove docker* 更新apt索引 apt update apt需要支持HTT ...

  8. MySQL主从复制遇到的问题

    show slave status\G时,io显示:Slave_IO_State: Connecting 1.检查网络是否畅通,方法:ping主机ip.主机通畅. 2.检查复制用户的账号密码是否正确. ...

  9. nodejs学习(二) ---- express中使用模板引擎jade

    系列教程,上一节教程  express+nodejs快速创建一个项目 在创建一个项目后,views目录下的文件后缀为 .jade . 打开 index.jade,具体内容如下图(忽略 header.j ...

  10. ecshop 修改支持php7 方案

    修改方法 http://jsb.php-php.com/2016/05/472/ 修改数据库配置 data/config.php