python 鸡零狗碎
python 鸡零狗碎
os.path.join() 可以连接结尾是正反斜线的字符串,不需要特意去掉
print os.path.join('aa\\','bb\\')# 'aa\bb\'
os.path.join() 是按照路径解释字符串,而非普通字符串
print os.path.join('aa/','/bb')# '/bb'
这里’/bb’实际上是个根目录的路径,所以把’aa/’挤兑没了
即使是r字符串结尾也不能是反斜线(转义符)
print r'some_path\' # error
print r'some_path\\' # right
pyth...
算法导论·最小堆
算法导论·最小堆
python3 自带有 heapd 模块,不需要自己写堆
#encoding:utf-8
class MinHeap():
def __init__(self):
self.__list = []
def push(self,n):
self.__list.append(n)
self.swim(len(self.__list)-1)
def pop(self):
# if len(self.__: return None
top = self.__list[0]
self.__list[0] = self.__list[-1]
self.__list.pop()
self.sink(0)
return top
d...
算法导论划重点.cn
算法导论划重点
原文
第一章 算法在计算中的作用
随你便。
第二章 算法基础
2.1 插入排序:讲道理你应该了解所有主流排序算法,不仅是插入排序,插入排序属于基础常识,不一定什么时候就会用到。
2.2 算法分析:说明部分可以跳过,剩下部分应该了解。
2.3 设计算法:包括了归并排序以其算法分析,以及分治思想简介,肥肠重要,值得一读。
第三章 函数的增长
完整阅读,需要知道大O记号和时间复杂度分析,就酱。
第四章 分治策略
4.1 最大子数组问题:值得花时间一读。对于这个问题本身,有比分治更好的解法,但是这是个不错的练习,里面的逻辑流会有助于你理清思路。
4.2 Strassen 算法:我超爱这个算法,## 第一次见到这个算法时感觉超酷超震惊,不过如果要应付面试,可以跳过,不会...
算法导论·动态规划·编辑距离
算法导论·动态规划·编辑距离
原书习题 15-5 第一部分
#encoding:utf-8
from collections import namedtuple
x = 'algorisssssthmssss'
y = 'altroidddthm'
z = [''] * len(y)
costs = namedtuple('Costs',['copy','replace','delete','insert','twiddle','kill'])(0,1,2,2,1,0)
m = len(x)
n = len(y)
i = j = 0
total_costs = 0
def copy():
global x,z,i,j,costs,total_costs
z[j] = x[...
算法导论·动态规划·DNA距离
算法导论·动态规划·DNA距离
原书习题 15-5 第二部分
#encoding:utf-8
from collections import namedtuple
x = 'GATCGGCAT'
y = 'CAATGTGAATC'
x_ = [''] * (len(x)+len(y))
y_ = [''] * (len(x)+len(y))
costs = namedtuple('Costs',['copy','replace','delete','insert','twiddle','kill'])(-1,float('inf'),2,2,float('inf'),float('inf'))
m = len(x)
n = len(y)
i = j = 0 # pointers...
算法导论划重点
Brief I2A
See Here
Chapter 1
Interesting read, but you can skip it.
Chapter 2
2.1 Insertion Sort - To be honest you should probably know all major sorting algorithms, not just insertion sort. It’s just basic knowledge and you never know when it can help.
2.2 Analysis of Algorithms - you can skip the small intro, but know the rest.
2.3 Designi...
C# 的 Dictionary
C# 的 Dictionary
基本逻辑
C# 的 Dictionary 是一种常用的数据结构,支持泛型,避免了类型检查和装箱,在HashMap的基础上有性能上的提高,内部逻辑也有一些区别。插入查找和删除的渐进复杂度都是O(1)。
逻辑结构 上,Dictionary使用桶和链表存储,对于任何一个对象,调用其 GetHashCode() 将对象映射为一个整数,范围是整个 int,再去掉符号位取余,将其映射到对应序号的桶里存放。
当预设的容量不够时候,字典会自动进行扩容。
以容量为 7 的字典中一个字串“Apple”为例:
“Apple” 经过 string.GetHashCode() 求得hash值为 63476538 ,再去符号取余得6,于是被存到bucket的6号位,...
解决Sublime Text 无法显示韩文
解决Sublime Text 无法显示韩文
打开 Sublime text –> Preferences –> Setting – default
找到”font_options”: [] 改成”font_options”: [ “directwrite”]
如果无法编辑,请在%appdata%\Sublime Text 3\Packages目录手动建议default文件夹,保存了再重新打开
亲测无法修改default配置文件,只能修改User文件,不过依然有效
共计 45 篇文章,6 页。