- 博客(17)
- 收藏
- 关注
原创 EASYHOOK XCTF 4TH-WHCTF-2017 攻防世界 通过此题理解hook钩子
观察程序此程序逻辑为输入一个19个字符长度的字符串,sub_401220函数可能对字符串做了预处理,然后创建文件,并把输入的字符串写到文件中,最后由401240函数进行尾处理。字符串正确的条件是numberofbyteswritten=1。按此思路我们先做测试,发现我输入的字符串,到了文件里竟然不是输入的了,故猜测401220()对字符串进行了预处理。详细分析401220()函数如下:获取当前进程号,打开进程到hprocess,libfilename为一常量kernel...
2021-01-18 16:18:46
475
3
原创 记一次bro+pf_ring zc的搭建历程
目前网上关于bro(zeek)+pf_ring zc的搭建流程的中文文章十分稀少。项目需要,历时两天,翻阅各种外文论坛/文档,多次排错,终于可以让bro在集群模式下调用pf_ring zc driver,并完美运行。搭载环境:intel(r) xeon(r) cpu e5-2609 ,2物理cpu,8核心,16逻辑cpu,32g内存。流程分为四部:pf_ring安装------licenc...
2019-08-09 17:14:29
3555
原创 图像集压缩算法现状
人们越来越多的使用电子相册来记录生活的点点滴滴。随着图像大小的提升,当有很多图片时,电子相册会变得非常大。如何压缩存储相册集是个值得探讨的问题。 所以能否去除图像集中的冗余,压缩存储,节省空间是一个很值得研究的问题。 关于大规模图像集的压缩,现今分为两大类算法,基于代表信息的算法,和基于视频流的算法。
2017-02-23 19:26:07
1330
转载 动态规划分类
动态规划(英语:Dynamic programming,DP)是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。 动态规划常常适用于有重叠子问题和最优子结构性质的问题,动态规划方法所耗时间往往远少于朴素解法。动态规划背后的基本思想非常简单。大致上,若要解一个给定问题,我们需要解其不同部分(即子问题),再合并子问题的解以得出原问题的
2016-04-22 20:12:04
1723
原创 2016.3.29 360c++ 研发编程第二题
题目:字符置换,字符串中出现的连续两个“.”。若每次操作把其中最开始的连续两个“.”以一个“.”替代,则可以将函数f(s) 定义为 使得串中不出现连续两个“.”的最小置换次数。 现考虑m个字符替换操作,每次将指定位置的字符替换为给定的字符,求替换后函数f(s)的值。 * 输入描述:输入有若干组,每组的第一行为两个整数n和m,1 * 第二行为所给的字符串,随后紧跟m行操
2016-03-30 12:10:59
576
原创 2016.3.29 360c++ 研发编程第一题
昨晚的在线笔试,有遗憾,但所幸两道编程全AC了,本来还有50分钟就写完了编程,但粘上去发现第二道竟然通过0%。。。本机好好的。所以做选择时心慌慌的,好几个题没时间直接蒙的,笔误点错好几个。。 最后我发现,我的第二道编程少粘上去一块。。 提前9分钟交卷,这种不允许改选择题的设计不合理呀。。 但愿能过第一题 一个数字游戏,给定一个取值范围为1是两个人先选数后生成targ
2016-03-30 12:05:14
783
原创 kmp算法c++实现
kmp算法c++实现// kmp.cpp : 定义控制台应用程序的入口点。//#include#include#includeusing namespace std;int main(int argc, char* argv[]){ string a; string b; cin >> a; cin >> b; int a_length = a.length();
2016-03-22 20:19:53
607
原创 kmp算法中next数组的3种表示方式
这两日看kmp算法,看的脑袋大了,最关键发现next数组表现形式不一,让我头疼, 现在终于搞明白了他们之间的关系,分析如下,i1234567P[i]ababacaS[i]0012301f(i)0112341
2015-12-11 13:26:29
928
原创 4阶b树与红黑树
任何一棵红黑树都对应一棵4阶b树,一棵4阶b树所对应的红黑树可能有多棵,但大同小异。直接记忆红黑树的插入删除很困难,而4阶b树的插入删除操作对应红黑树的旋转与变色,所以每做一步,写出对应的4阶b树,操作完后,再变换回红黑树,十分好理解。需要注意以下几个问题:1.每一个4阶节点,注意它对应的红黑树如图,记得及时变换;2.每次引起的分裂,注意是分裂完后再插入要插
2015-12-08 18:00:15
3969
原创 KD树在knn算法中的应用
李航博士的书只讲了求得最近邻的一个样本点的检测,但我们实际中要的是k个近邻点。 我的一些猜测是在进行距离比较时,比如k=3,需要同时保存3个最近的距离,那我们可以以当前最近邻点的三个点与目的点的距离为半径,以目的点为圆心,看在这3个半径中,是否有新的样本点落在其中,如果有一个半径中包含新的样本点,kd树就需要转到那个分支上进行检测。 有时间会研究下lire图片搜索引擎中的实现,
2015-06-14 16:10:58
2194
转载 随机梯度下降(Stochastic gradient descent)和 批量梯度下降(Batch gradient descent )的公式对比、实现对比
很不错的文章 原文地址http://blog.youkuaiyun.com/lilyth_lilyth/article/details/8973972梯度下降(GD)是最小化风险函数、损失函数的一种常用方法,随机梯度下降和批量梯度下降是两种迭代求解思路,下面从公式和实现的角度对两者进行分析,如有哪个方面写的不对,希望网友纠正。下面的h(x)是要拟合的函数,J(theta
2015-06-13 21:15:13
734
原创 线性回归及梯度下降-机器学习1
项目原因,需要学习机器学习,故在此做一系列,督促自己,每周大概出3篇本文会讲到:(1)线性回归的定义(2)单变量线性回归(3)cost function:评价线性回归是否拟合训练集的方法(4)梯度下降:解决线性回归的方法之一(5)feature scaling:加快梯度下降执行速度的方法(6)多变量线性回归Linear Regression
2015-06-13 20:19:47
701
转载 程序编译运行时头文件或动态链接库的查找---一篇非常好的文章
当考虑怎样总结这个头文件及动态链接库的查找问题时,我想到了一个程序从生到死的历程。写过很多程序,编译过很多程序,也运行过很多程序,对一个程序的从生到死,感觉很简单,也就没有做更多的或者说深入的思考与研究。也许我们习惯了在windows环境下的编程,在那里我们有很好的IDE,它能把一个工程组织得很好,直接点编译生成一个可执行文件,然后直接双击这个.exe文件或者创建一个快捷方式运行这个程序。以前可能
2015-04-21 15:27:03
980
原创 opencv-2.4.10 linux环境搭建
Ubuntu 12.04.2 LTS上安装opencv 2.4.10 一:本机基本配置 显卡:NVIDIA Corporation GT218 [GeForce 210] Core:4核 Linux版本:Ubuntu 12.04.2 LTS二:安装步骤1.移除一些库,否则可能会和后面的要求版本有冲突 sudo apt-get
2015-04-16 14:11:05
2685
转载 simhash与重复信息识别
在工作学习中,我往往感叹数学奇迹般的解决一些貌似不可能完成的任务,并且十分希望将这种喜悦分享给大家,就好比说:“老婆,出来看上帝”…… 随着信息爆炸时代的来临,互联网上充斥着着大量的近重复信息,有效地识别它们是一个很有意义的课题。例如,对于搜索引擎的爬虫系统来说,收录重复的网页是毫无意义的,只会造成存储和计算资源的浪费;同时,展示重复的信息对于用户来说也并不是最好的体验。造成网页近重复的可
2015-03-21 21:51:53
613
转载 N-gram模型
N-Gram是大词汇连续语音识别中常用的一种语言模型,对中文而言,我们称之为汉语语言模型(CLM, Chinese Language Model)。汉语语言模型利用上下文中相邻词间的搭配信息,在需要把连续无空格的拼音、笔划,或代表字母或笔划的数字,转换成汉字串(即句子)时,可以计算出具有最大概率的句子,从而实现到汉字的自动转换,无需用户手动选择,避开了许多汉字对应一个相同的拼音(或笔划串,或数字串
2015-03-20 21:46:37
530
转载 CUDA: Threading的Block和Grid的設定與 Warp
CUDA: Threading的Block和Grid的設定與 Warp分类: CUDA2013-10-14 15:07 400人阅读 评论(0) 收藏 举报硬體基本架構實際上在 nVidia 的 GPU 裡,最基本的處理單元是所謂的 SP(Streaming Processor),而一顆 nVidia 的 GPU 裡,會有非常多的 SP 可以同時做計算;而數
2015-01-28 12:30:33
508
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人