is
zhou

数据算法

为什么算法这么难?

zhouchong阅读(34)评论(0)

  广大码农同学们大多都有个共识,认为算法是个硬骨头,很难啃,悲剧的是啃完了还未必有用——除了面试的时候。实际工程中一般都是用现成的模块,一般只需了解算法的目的和时空复杂度即可。 不过话说回来,面试的时候面算法,包括面项目中几乎不...

绝妙的算法——最大子序列和问题

zhouchong阅读(21)评论(0)

摘要: 本文分析并演示最大子序列和问题的几种算法,它们都能解决问题,但是时间复杂度却大相径庭,最后将逐步降低至线性。 问题的引入     给定(可能有负数)整数序列A1, A2, A3…, An, 求这个序列中子序列和的最大值。...

哈希(Hash)与加密(Encrypt)的基本原理、区别及工程应用

zhouchong阅读(29)评论(0)

0、摘要 今天看到吉日嘎拉的一篇关于管理软件中信息加密和安全的文章,感觉非常有实际意义。文中作者从实践经验出发,讨论了信息管理软件中如何通过哈希和加密进行数据保护。但是从文章评论中也可以看出很多朋友对这个方面一些基本概念比较模糊,这样就容易...

算法时间复杂度分析基础

zhouchong阅读(30)评论(0)

摘要       本文论述了在算法分析领域一个重要问题——时间复杂度分析的基础内容。本文将首先明确时间复杂度的意义,而后以形式化方式论述其在数学上的定义及相关推导。从而帮助大家从本质上认清这个概念。 前言       通常,对于一个给定的算...

冒泡排序

zhouchong阅读(63)评论(0)

冒泡排序介绍 冒泡排序(Bubble Sort),又被称为气泡排序或泡沫排序。 它是一种较简单的排序算法。它会遍历若干次要排序的数列,每次遍历时,它都会从前往后依次的比较相邻两个数的大小;如果前者比后者大,则交换它们的位置。这样,一次遍历之...

队列

zhouchong阅读(65)评论(0)

队列的介绍 队列(Queue),是一种线性存储结构。它有以下几个特点: (01) 队列中数据是按照”先进先出(FIFO, First-In-First-Out)”方式进出队列的。 (02) 队列只允许在”...

zhouchong阅读(58)评论(0)

栈的介绍 栈(stack),是一种线性存储结构,它有以下几个特点: (01) 栈中数据是按照”后进先出(LIFO, Last In First Out)”方式进出栈的。 (02) 向栈中添加/删除数据时,只能从栈顶进...

线性表简介

zhouchong阅读(61)评论(0)

线性表是一种线性结构,它是具有相同类型的n(n≥0)个数据元素组成的有限序列。 数组 数组有上界和下界,数组的元素在上下界内是连续的。 存储10,20,30,40,50的数组的示意图如下: 数组的特点是:数据是连续的;随机访问速度快。 数组...

递归简介

zhouchong阅读(65)评论(0)

递归的定义: 递归(英语:recursion)在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法。[1] 递归式方法可以被用于解决很多的计算机科学问题,因此它是计算机科学中十分重要的一个概念。[2] 绝大多数编程语言支持...