摘要: 总目录(Catalog) 阅读全文
posted @ 2018-07-15 17:47 Jonins 阅读(678) 评论(1) 推荐(0) 编辑
摘要: 细化时间复杂度分析 代码千千万,有些代码逻辑会很复杂,所以为了更细化的分析算法的复杂度,再复杂度分析方面引入了4个知识点: 1.最好情况时间复杂度(best case time complexity)。 2.最坏情况时间复杂度(worst case time complexity)。 3.平均情况时 阅读全文
posted @ 2019-01-08 09:47 Jonins 阅读(13883) 评论(0) 推荐(3) 编辑
摘要: 前言 算法复杂度是指算法在编写成可执行程序后,运行时所需要的资源,资源包括时间资源和内存资源。 复杂度也叫渐进复杂度,包括时间复杂度和空间复杂度,用来粗略分析执行效率与数据规模之间的增长趋势关系,越高阶复杂度的算法,执行效率越低。 复杂度分析是数据结构与算法的核心精髓,指在不依赖硬件、宿主环境、数据 阅读全文
posted @ 2018-11-13 10:36 Jonins 阅读(4583) 评论(0) 推荐(3) 编辑
摘要: 前言 1 print("\n".join([''.join(['*'*((x-y)%3) if((x*0.05)**2+(y*0.1)**2 -1)**3-(x*0.05)**2*(y*0.1)**3<=0 else ' ' for x in range(-30,30)]) for y in ran 阅读全文
posted @ 2018-10-10 10:48 Jonins 阅读(1352) 评论(0) 推荐(2) 编辑
摘要: 前言 字符串基础(String) python中字符的定义使用单引号或者双引号都可以,例如: 注意:在python3中input获取键盘输入的数据,都以字符串的方式进行保存,即使输入的是数字。 下标&切片 1.下标 下标:可以理解为数组类数据类型内元素的索引。列表与元组支持下标索引,字符串是字符的数 阅读全文
posted @ 2018-10-06 17:21 Jonins 阅读(1081) 评论(0) 推荐(0) 编辑
摘要: 前言 Python的意思是蟒蛇,源于作者Guido van Rossum(龟叔)喜欢的一部电视剧。 Python基础概述 1.优点 简单:Python是一种代表简单主义的语言。Python这种伪代码本质是它最大的优点之一,它使你能够专注于解决问题而不是搞明白语言本身。 易学:Python极易上手,它 阅读全文
posted @ 2018-09-28 22:18 Jonins 阅读(1005) 评论(1) 推荐(4) 编辑
摘要: 前言 作为.NET Coder可能.NET Core是现阶段首要学习方向,但是说实在的对Core真的不感冒。 原因有几点: 1.公司项目底层需要的一部分库,Core还不支持。 2.同样的需求,.NET能满足的情况下,为何要用Core再实现一遍呢?如果不是为了特殊的跨平台需求,我觉得根本没必要。 3. 阅读全文
posted @ 2018-09-23 19:16 Jonins 阅读(11284) 评论(0) 推荐(0) 编辑
摘要: 前言 并行编程:通过编码方式利用多核或多处理器称为并行编程,多线程概念的一个子集。 并行处理:把正在执行的大量的任务分割成小块,分配给多个同时运行的线程。多线程的一种。 并行编程分为如下几个结构: 1.并行的LINQ或PLINQ 2.Parallel类 3.任务并行结构 4.并发集合 5.SpinL 阅读全文
posted @ 2018-09-22 01:24 Jonins 阅读(10737) 评论(9) 推荐(14) 编辑
摘要: 前言 本来这篇文章上个月就该发布了,但是因为忙 QuarkDoc 一直没有时间整理,所以耽搁到今天,现在回归正轨。 C# 5.0 虽然只引入了2个新关键词:async和await。然而它大大简化了异步方法的编程。 在 线程池(threadPool)大致介绍了微软在不同时期使用的不同的异步模式,有3种 阅读全文
posted @ 2018-09-12 09:14 Jonins 阅读(29717) 评论(13) 推荐(18) 编辑
摘要: 有些话说在前头 因为公司产品业务重构且功能拆分组件化,往后会有很多的接口文档需要留存,所以急需一款文档管理系统。当时选型要求3点: 1.不能是云平台上的Saas服务,整个系统都要在自己公司部署维护(数据安全)2..NET平台开发(利于维护)3.开源(可按需重构) 大约三周前,在线上找了很久开源的文档 阅读全文
posted @ 2018-09-05 09:19 Jonins 阅读(9028) 评论(41) 推荐(37) 编辑
摘要: 任务概述 线程(Thread)是创建并发的底层工具,因此有一定的局限性(不易得到返回值(必须通过创建共享域);异常的捕获和处理也麻烦;同时线程执行完毕后无法再次开启该线程),这些局限性会降低性能同时影响并发性的实现(不容易组合较小的并发操作实现较大的并发操作,会增加手工同步处理(加锁,发送信号)的依 阅读全文
posted @ 2018-08-15 10:25 Jonins 阅读(5232) 评论(1) 推荐(4) 编辑
摘要: 线程池概述 由系统维护的容纳线程的容器,由CLR控制的所有AppDomain共享。线程池可用于执行任务、发送工作项、处理异步 I/O、代表其他线程等待以及处理计时器。 线程池与线程 性能:每开启一个新的线程都要消耗内存空间及资源(默认情况下大约1 MB的内存),同时多线程情况下操作系统必须调度可运行 阅读全文
posted @ 2018-08-07 12:50 Jonins 阅读(11921) 评论(5) 推荐(6) 编辑
摘要: 线程概述 线程是一个独立处理的执行路径。每个线程都运行在一个操作系统进程中,这个进程是程序执行的独立环境。在单线程中进程的独立环境内只有一个线程运行,所以该线程具有独立使用进程资源的权利。在多线程程序中,在进程中有多个线程运行,所以它们共享同一个执行环境。 基础线程(thread) 使用Thread 阅读全文
posted @ 2018-07-24 11:09 Jonins 阅读(6978) 评论(4) 推荐(8) 编辑
摘要: 事件概述 委托是一种类型可以被实例化,而事件可以看作将多播委托进行封装的一个对象成员(简化委托调用列表增加和删除方法)但并非特殊的委托,保护订阅互不影响。 基础事件(event) 在.Net中声明事件使用关键词event,使用也非常简单在委托(delegate)前面加上event: 上述代码执行结果 阅读全文
posted @ 2018-07-18 17:39 Jonins 阅读(2655) 评论(4) 推荐(5) 编辑
摘要: 委托概述 将方法调用者和目标方法动态关联起来,委托是一个类,所以它和类是同级的,可以通过委托来掉用方法,不要误以为委托和方法同级的,方法只是类的成员。委托定义了方法的类型(定义委托和与之对应的方法必须具有相同的参数个数,并且类型相同,返回值类型相同),使得可以将方法当作另一个方法的参数来进行传递,这 阅读全文
posted @ 2018-07-17 12:10 Jonins 阅读(6264) 评论(5) 推荐(1) 编辑
摘要: 前言 说实话,在我软件开发的头两年几乎不考虑并发编程,请求与响应把业务逻辑尽快完成一个星期的任务能两天完成绝不拖三天(剩下时间各种浪),根本不会考虑性能问题(能接受范围内)。但随着工作内容的变化,一些问题,它的解决方案已经让我避不开并发编程这一块知识点了。为了一劳永逸,此系列与并发编程有关的系列文章 阅读全文
posted @ 2018-07-15 17:40 Jonins 阅读(601) 评论(1) 推荐(0) 编辑