自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

相信相信的力量

公众号:Python与算法社区

  • 博客(14)
  • 资源 (31)
  • 问答 (1)
  • 收藏
  • 关注

原创 归并排序算法的过程图解

归并排序的时间复杂度,在最坏,最好和平均都是O(nlogn),这是效率,性能非常好的排序算法。只不过它需要占用 O(n)的内存空间,如果数据量一旦很大,内存可能吃不消,这是它的弱点和致命伤。而其他排序算法,比如快速排序,希尔排序,都是就地排序算法,它们不占用额外的内存空间。

2017-10-31 07:55:06 32031 5

原创 直接插入排序到希尔排序做的那些改进

彻底弄明白常用的排序算法的基本思想,算法的时间和空间复杂度,以及如何选择这些排序算法,确定要解决的问题的最佳排序算法,已经总结了冒泡排序和其改进后的快速排序算法,直接选择排序和堆排序算法,下面总结直接插入排序到希尔排序做的改进,后面再继续总结归并排序和基数排序。

2017-10-30 09:02:16 2566 1

原创 直接选择排序到堆排序做的那些改进

1 你会学到什么 2 讨论的问题是什么 3 相关的概念和理论 4 直接选择排序基本思想升序排序的例子算法评价 5 直接选择的优化版之堆排序自学成才的计算机科学家 Flody堆排序的基本概念堆排序的算法思想堆排序是如何工作的应用堆排序得到升序排序的例子算法评价 6 总结 1 你会学到什么?彻底弄明白常用的排序算法的基本思想,算法的时间和空间复杂度,以及如何选择这些排序算法

2017-10-29 08:24:09 3096

原创 冒泡排序到快速排序做的那些优化

你会学到什么?彻底弄明白常用的排序算法的基本思想,算法的时间和空间复杂度,以及如何选择这些排序算法,确定要解决的问题的最佳排序算法,我们先总结下冒泡排序和其改进后的快速排序这两个算法,后面再继续总结插入排序、希尔排序、选择排序、堆排序、归并排序和基数排序。讨论的问题是什么?各种排序算法的基本思想;讨论各种排序算法的时间、空间复杂度;以及算法的稳定性;算法是如何改进的,比如冒泡排序如何改

2017-10-28 07:39:51 3031

原创 二叉树非递归版的后序遍历算法

你会学到什么?树的递归遍历算法很容易理解,代码也很精简,但是如果想要从本质上理解二叉树常用的三种遍历方法,还得要思考树的非递归遍历算法。读完后的收获:将学到二叉树的后序遍历的非递归版本明白栈这种数据结构该怎么使用讨论的问题是什么?主要讨论二叉树的非递归版后序遍历该如何实现,包括借助什么样的数据结构,迭代的构思过程等。相关的概念和理论遍历 Traversal 指沿着某条搜索路线,依次对树中每个结

2017-10-27 15:57:32 8395

原创 图解二叉树非递归版的中序遍历算法

你会学到什么讨论的问题是什么这个问题相关的概念和理论非递归版中序遍历算法代码思考算法技巧实现代码快照评价算法总结欢迎关注算法思考与应用公众号你会学到什么?树的递归遍历算法很容易理解,代码也很精简,但是如果想要从本质上理解二叉树常用的三种遍历方法,还得要思考树的非递归遍历算法。读完后的收获:您将学到二叉树的中序遍历的非递归版本明白栈这种数据结构该怎么使用讨论的问题是什么?主

2017-10-26 12:57:45 4645

原创 图解二叉树非递归版的前序遍历算法

“ 图解用栈数据结构对树的前序遍历,中序遍历,后续遍历。”

2017-10-25 11:22:55 9200

原创 算法思想-深度搜索算法-leetcode相关题目总结

搜索算法深度优先搜索分析过程实现代码进出栈过程示意图 DFS算法应用-Leetcode相关题目 Leetcode 78 Subsets Leetcode 90 Subsets II Leetcode 47 Permutations II Leetcode 131 Palindrome Partitioning答案搜索算法搜索算法,常见的几种形式,深度优先,广度优先,二分搜索,应

2017-10-24 17:31:25 7583

原创 131. Palindrome Partitioning

深度优先搜索找字符串的子回文字符串

2017-10-19 17:15:55 3994

原创 WCF 分布式事务

事务属性当在面向服务的应用程序中使用事务时,必须遵守四个核心属性,也就是ACID:原子性(Atomic)、一致性(Consistent)、隔离性(Isolated)和持久性(Durable)。注意点 在一个事务处理中,不要访问非事务的资源很关键(如文件系统),因为事务一旦被中止,是不会回滚这些非事务资源上的改变。事务管理WCF服务能够直接处理事务性的资源,并通过显式地使用编程模型(如ADO.NET

2017-10-18 16:11:18 355

原创 WCF 错误处理

错误概述在设计良好的应用程序中,服务应该是被封装的,客户端无法知道有关错误的消息。设计良好的服务应尽可能是自治的,不能依赖客户端去处理或恢复错误。 任何非空的错误通知都应该是客户端与服务端之间契约交互的一部分。WCF错误处理的关键3个技术点错误隔离 错误屏蔽 通道故障错误隔离当代表某个客户端的服务调用导致异常时,并不会寄宿在宿主进程,其它客户端仍然可以访问该服务。 这是必须的!托管在相同进程

2017-10-18 15:20:18 463

原创 WCF 协定中常用的操作

WCF协定中包含的操作说明

2017-10-18 13:24:48 551

原创 WCF 限流技术

限流限流(Throttling)并非直接的实例管理技术,它允许开发者限制客户端连接数以及服务的负荷。

2017-10-18 11:36:14 370

原创 WCF分布操作-如何判断通道关闭并再次创建通道

分布操作含义解释一个会话协定的操作有时会隐含了操作调用的顺序。有的操作不能被最先调用,而有的操作则必须被最后调用。WCF实现分布操作的技术WCF允许协定设计者指定协定操作为启动会话的操作,还是终止会话的操作,方法是使用 OperationContract 特性的 IsInitiating 和 IsTerminating 属性,还有一个前提条件是,必须在相应的服务协定上添加 SessionMode 设

2017-10-17 16:35:16 1220

Demo: c/c++动态库(DLL)调用,c#等其他语言调用c/c++的DLL

c++动态库调用另一个动态库 c++动态库调用c动态库 c#等其他语言调用c/c++动态库

2017-08-09

斯坦福大学CS246 book-Mining of Massive Datasets

斯坦福大学 Mining of Massive Datasets

2017-07-06

LeetCode-Manager

自己基于.NET平台,EF框架,制作的本地SQL Server小工具,专门管理LeetCode标签和题目,能输出用于CSDN博客和Github表格模板的功能。

2017-06-10

LeetCode 完成题目管理工具

自己基于.NET平台制作的本地SQL Server小工具,专门管理LeetCode标签和题目,能输出用于CSDN博客和Github表格模板的功能。

2017-06-10

.NET-BackgroundWorker实现异步处理和滚动条报告进度Demo

.NET-BackgroundWorker实现异步处理和滚动条报告进度Demo http://blog.csdn.net/daigualu/article/details/71211336

2017-05-05

leetcode-tag-Tree

leetcode-tag-Tree

2017-04-29

leetcode-tag-Stack

leetcode-tag-Stack

2017-04-29

leetcode-tag-dynamic programming

leetcode-tag-dynamic programming

2017-04-29

leetcode-tag-array

leetcode-tag-array

2017-04-29

归并排序算法程序模拟

归并排序过程的前半部分,过程示意图见下,从图中可见,步骤1,2,3,4一直分割区间,等到步骤5时,左右区间长度都为1,此时发生一次归并,结果再与另一个区间长度为1的归并,即步骤6;步骤7分割,步骤8归并,步骤9归并后前半部分合并结束; 后半部分过程与前半部分归并一致,不再详述。

2017-03-30

.NET-TreeView控件扩展功能:CheckBoxs父子选中状态同步和自动调整

.NET System.Windows.Forms命名控件中TreeView组件,有一个CheckBoxs属性,控制着这个控件每个节点前是否显示勾选框,如果设置为true,所有节点的勾选框选中,反之都不选中;如果选中父节点,子节点不会自动选中。根据需求,自动扩展了这个控件,使具备父子选中状态同步。如果鼠标离开这个控件,通过鼠标单击,隐藏复选框,否则进入某个节点,单击,显示复选框。

2017-03-28

模拟KMP失配函数next过程分析

模拟KMP失配函数next过程分析

2017-03-23

实例模拟KMP算法的next失配函数

实例模拟KMP算法的next失配函数

2017-03-21

快速排序算法实现

选取一个关键码key,一趟排序将要排序的数据分割成独立的两部分,key前的元素都小于key, 靠后的都大于key, 然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。

2017-03-16

C# Sort 按年龄排序

2万多名员工按年龄排序算法, 算法思想是归并排序,同时结合年龄取值的实际情况。

2017-03-15

LinkedList 所有公有方法和属性 导图

.NET框架中的LinkList,实现的是双向链表,总结下它的实现源码。 LinkedList提供的公有属性和方法的导图

2017-03-13

C# System.Collections所有对象的类图,结构图

System.Collections导图,不含泛型(泛型与非泛型基本一致)

2017-03-13

.NET: Xml.Serialization常用对象导图

.NET框架中,System.Xml.Serialization 命名空间包含着用来将对象序列化为XML的文本或流的对象。

2017-03-10

模拟实验-C#版基于二分查找的稳定“插入排序”算法

程序模拟实验所用到的所有源码,包括冒泡排序,插入排序,代码运行时长统计等。

2017-03-10

冒泡排序修正版本

冒泡排序C#描述和模拟分析

2017-03-09

用C#描述数据结构4:模拟冒泡排序过程,比较次数分析

先生成一堆乱序的集合。在.NET中通过Random,生成随机数,模拟了排序的过程,分析了两两比较大于1次的比较!

2017-03-08

C#语言及全应用思维导图

C#语言及全应用思维导图

2017-03-08

如何由浅复制到深度复制

我想实现了深度复制呢,也就是我新复制出来的对象不是仅仅复制引用, 而是复制对象!比如说,你需要在一个模板的基础上修改出5个版本的建立,每个版本投递到不同的企业上,版本1投给公司A,版本2投给公司B,。。。假如说这5个版本的不同仅仅是“我期望加入某某公司”,某某换成5个公司对应的名称。

2017-03-07

C#中的ArrayList导图

ArrayList。   首先,它不是静态的,编译时每一维度的元素个数不用指定,系统默认元素个数为16,当元素增多并即将大于16时,它会增倍扩容到32,依次规律增长,变小时,相反处理。   其次,元素类型是弱类型,object。在运行时,根据实际被赋予的类型,确定每个元素的类型,也就是说,这个集合中的元素可以是各种不同的元素,鱼龙混杂式的。

2017-03-07

Array:一维和二维接口语义区分

Array: 一维和二维初始化,常用易混淆的语义接口!

2017-03-06

用C#描述数据结构2:Array

Array是.NET提供的最基础的数据集合,通过索引直接访问集合元素。提供一维或多维数据存储,并支持诸如,查询,搜索,排序,复制等操作。 提供的主要接口,根据语义划分,主要包括:

2017-03-06

统计代码执行时间对象

自定义一个统计代码执行时间的类*CalcTiming*,考虑了: - 在统计执行过程中,不允许有垃圾回收。即在统计代码执行时间之前,就让GC完成垃圾回收。 - 确保统计的是当前进程中代码的执行时间。

2017-03-06

数据结构用C#语言描述

  数据结构对专业程序员的开发起到至关重要的作用。正在开始一个专栏,准备把导图中涉及到的数据结构用C#语言写一遍。

2017-03-06

基于C#.NET的visual studio编写的贷款分析器

基于C#.NET的visual studio编写的贷款分析器

2017-03-05

根据业务倒推观察者模式

订阅-分发模式,又叫观察者模式,那么这种模式它的实现机理是什么?它该如何在产品开发中实际应用呢? 我们学一种模式,最好不要死板的去学它,可以根据业务的需求将伪代码逐渐转化为真正的代码。自己画画图,编编码,体会这种机制,这样完全实践一遍后,才能真正体会这种模式的精髓所在,然后将其用于以后的产品开发中。

2017-03-05

Windows程序运行原理

Windows程序运行原理

2014-10-26

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除