摘要: 插入排序 ①:直接插入排序: 简单插入排序就是每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。 运行结果为: ②:二分插入排序: 快速找到插入时的位置 结果为: 冒泡排序: 冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错 阅读全文
posted @ 2017-12-03 11:58 Geek.w 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 1、什么是设计模式: 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基 阅读全文
posted @ 2017-10-31 17:06 Geek.w 阅读(203) 评论(0) 推荐(0) 编辑
摘要: KMP算法看懂了觉得特别简单,思路很简单,看不懂之前,查各种资料,看的稀里糊涂,即使网上最简单的解释,依然看的稀里糊涂。 KMP算法充分利用了目标字符串ptr的性质(比如里面部分字符串的重复性,即使不存在重复字段,在比较时,实现最大的移动量)。 kmp算法主要是next数组的计算 代码分析: 阅读全文
posted @ 2017-10-19 21:37 Geek.w 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 栈的特点:后入先出,只能从栈顶往栈底一个一个压,取的时候也只能从栈顶一个一个取出来; 下面是简易的实现: 阅读全文
posted @ 2017-10-19 21:28 Geek.w 阅读(1247) 评论(0) 推荐(0) 编辑
摘要: 单链表的形式:头部有个head节点每个节点都向后关联一个节点 下面是我的单链表的插删改查和反转的操作: 阅读全文
posted @ 2017-10-19 21:20 Geek.w 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 随着测试的越来越多,如果还是在真实的数据上测试就会体别慢,跑了61个测试竟然花费了2分多钟,不得不找一种快速一点的办法,EFcore由于不支持Sqlite的自动建表, 所以Sqlite是用不上了,于是使用了Effort的内存数据库。 首先在Nuget上导入Effort.EF6 在数据获取实例类上加上 阅读全文
posted @ 2017-05-20 19:26 Geek.w 阅读(456) 评论(0) 推荐(0) 编辑
摘要: 在.net中使用sqlite数据库需要引用SQLite.Interop.dll引用,一帮添加两文件夹就可以了 64的和32位的里面分别包含了SQLite.Interop.dll 测试里也加上 但是有时虽然已经添加了引用还是出现“无法加载 DLL“SQLite.Interop.dll”,找不到指定的模 阅读全文
posted @ 2017-05-02 18:49 Geek.w 阅读(12590) 评论(2) 推荐(1) 编辑
摘要: 单例模式分为两大类:懒汉式和饿汉式 其最主要的区别在于: 懒汉式:指全局的单例实例在第一次被使用时构建 饿汉式:指全局的单例实例在类装载时构建 日常我们使用的最多也是懒汉式,懒汉式是按需加载,能够做到资源的最大利用 懒汉式: 虽然这样写没什么问题,但是如果是多线程时可能出现问题了,如果多个线程同时访 阅读全文
posted @ 2017-04-22 18:11 Geek.w 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 在项目常常需要使用的邮箱这个功能,特别是用户的找回密码功能,这是必不可少的 其实也很简单 使用时只要如下调用就行: 注意如果是使用qq邮箱发送的话 还要先配置下邮箱 把服务打开就可以正常的发送邮箱啦 阅读全文
posted @ 2017-04-21 18:42 Geek.w 阅读(695) 评论(0) 推荐(0) 编辑
摘要: 前面讲了如何封装EF的连接实例,下面讲讲如何封装一些常用的操作 首先是UnitofWorks 这里我使用了事物操作 接下来时是实现 获取实例时我使用了反射操作,这样就能吧EF的操作封装到框架里 另外用了EF的连接预热 使用时只要在Global.asax的start中调用此方法 Repository封 阅读全文
posted @ 2017-04-21 18:30 Geek.w 阅读(526) 评论(0) 推荐(0) 编辑