技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> isnowfy
    以前一直不明白lock free是什么,后来发现原来是完全理解错了概念,lock free看到大家有的翻译为无锁,有的翻译为锁无关,其实用不用锁和lock free是不相关的,用了锁也可能是lock free,而不用锁有可能不是lock free。
    因为cpp没有拉圾回收的机制,所以,cpp程序经常出现各种内存泄漏,一般而言,指针的new和delete需要对应,不然就会出现很严重的问题。而智能指针就是帮助我们自动管理指针的一种方式,比较常用的就是利用引用计数的方式,实现,当变量出了作用域时自动删除,当还有其他变量持有指针时不会删除。
    类似google doc,协同编辑就是能够让多人同时编辑同一份文档。用过版本控制的童鞋都知道,用版本控制的一个好处就是,可以方便的多人共同去做一个项目,但有时大家会对同一个文件的同一行进行了修改,这时merge代码的时候,就需要你去手工去解决冲突,而协同编辑同样也面临冲突的问题,这时候就是程序实时的自动去解决冲突了。
    这几天重温了一下网络协议,感觉有必要记录一下。首先就是对于现在而言,网络分为7层,第一层为物理层,往后依次是链路层,网络层,传输层,会话层,表示层,应用层,而一般情况下可以把会话层,表示层,应用层整体看作一个应用层,最为经典的案例就是ip协议在网络层,tcp在传输层,http在应用层。
    感觉这是个经典问题了,但是今天看维基百科的时候还是有了新的发现,话说这个问题,比较挫的解决方案有先排序,然后找到第K小的,复杂度是O(nlogn),还有就是利用选择排序或者是堆排序来搞,选择排序是O(kn),堆排序是O(nlogk),比较好的解决方案是利用类似快速排序的思想来找到第K小,复杂度为O(n),但是最坏情况可能达到O(n^2),不过今天要说的,就是还有种方法可以使得最坏情况也是O(n)。
    记得刚使用ubuntu的时候,处理各种乱码神马的都是很麻烦的事情,后来开始写一些web程序的时候,中文编码的问题还是会不断的出现,于是对于web程序员来说,字符集编码已经是十分常见的问题了,但是如果不去系统的了解下,处理问题时还是会有些棘手的,这篇文章我就打算简单的介绍下这些问题。
    先简单说一下公钥密钥的非对称算法的概念,平常我们用的加密算法往往都是对称的,也就是说加密密钥和解密密钥是一样的,比如凯撒密码,你把每个字母后移3位,a变成d,b变成e,这里3就是加密密钥,然后解密的时候前移3位,这时候3就是解密密钥,非对称加密顾名思义就是加密密钥和解密密钥是不同的,恩,数学就是能干很多神奇的事情啊。
    在计算机科学里,有时间复杂度的概念,然后就有P,NP,NPC,NP-hard的概念,平常大家说的这个题是np的,只能搜了,其实是理解错了np的概念,首先要明确np并不是“不是p”的意思,p大家都清楚是指有多项式时间的算法,而np看全称是“nondeterministic polynomial time”,是说非确定多项式时间,进一步说,正如图片上说的p是属于np的,所有p问题都是np问题。
     首先SVD和LSA是什么呢,SVD全称是singular value decomposition,就是俗称的奇异值分解,SVD的用处有很多,比如可以做PCA(主成分分析),做图形压缩,做LSA,那LSA是什么呢,LSA全称Latent semantic analysis,中文的意思是隐含语义分析,LSA算是topic model的一种,对于LSA的直观认识就是文章里有词语,而词语是由不同的主题生成的,比如一篇文章包含词语计算机,另一篇文章包含词语电脑,在一般的向量空间来看,这两篇文章不相关,但是在LSA看来,这两个词属于同一个主题,所以两篇文章也是相关的。
    简单来说基于物品的协同过滤算法是说我会推荐给你和你喜欢物品相似的物品,而基于用户的协同过滤算法是说我把和你相似的用户喜欢的东西推荐给你。为什么叫协同过滤呢,因为我们是利用用户的群体行为来作这些相似操作的。计算物品的相似的时候我们比较不同的人来对他打分来比较,同样计算用户相关性的时候我们就是通过对比他们对相同物品打分的相关度来计算的。
    ​看到网上一些对于md5的介绍还有对于当初王小云所做的破解有很多的误解,或者说不理解,然后觉得对于这些事情只要说明白还是比较好理解的说。
[ 共11篇文章 ][ 第1页/共1页 ][ 1 ]
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1