#算法的乐趣

由“栈的逆序”谈谈递归算法

要求将一个栈逆序,使用递归。 我们先看看最常规的解法应该是怎样的,显然对于“逆序”这种问题描述,栈这种数据结构就会蹦入我们的脑海。 实现代码如下:[java]viewplaincopyprint?public static LinkedStack<I...

并查集(Union-Find)算法介绍

本文主要介绍解决动态连通性一类问题的一种算法,使用到了一种叫做并查集的数据结构,称为Union-Find。更多的信息可以参考Algorithms 一书的Section1.5,实际上本文也就是基于它的一篇读后感吧。原文中更多的是给出一些结论,我尝试给出一些思路上的过程,即为什么要使用这个方法,而不是别的什么方法...

【起】ACM类下为过往所做过的部分算法题目

【起】ACM类下为过往所做过的部分算法题目几百道题,日后细细品味。 ...

C# 实现 Snowflake算法 ID生成

http://blog.csdn.net/w200221626/article/details/52064976C#实现Snowflake算法///<summary>///动态生产有规律的IDSnowflake算法是Twitter的工程师为实现递增而不重复的ID实现的///http://blog.csdn....

sklearn中机器学习算法评价指标

#机器学习分类算法的评价指标#二分类问题的算法评价指标importnumpyasnpimportmatplotlib.pyplotaspltimportpandasaspdfromsklearnimportdatasetsd=datasets.load_digits()x=d.datay=d.target.copy()...

sklearn调用逻辑回归算法

#逻辑回归算法是一个二分类的算法,但是通过变形可以解决多分类的任务#逻辑回归将数据的特征转变为数据的发生概率,然后与阈值作比较,判断是0还是1,所以也可以叫做回归算法importnumpyasnpimportmatplotlib.pyplotasplt#定义概率转换函数sigmoid函数defsigmoid(t):re...

「数据结构与算法之链表(Python)」(四)

顺序表的储存分为一体式结构和分离式结构,但总的来说存储数据的内存是一块连续的单元,每次申请前都要预估所需要的内存空间大小。这样就不能随意的增加我们需要的数据了。链接就是为了解决这个问题。它的数据存储方式是每插入一个数据,就在内存中申请一块存储空间来保存,那么新增加的数据如何和之前的数据保持关联呢?解决方法就是在原来的数...

「数据结构与算法(Python)」(三)

栈可以用顺序表实现,也可以用链表实现。栈的操作Stack()创建一个新的空栈push(item)添加一个新的元素item到栈顶pop()弹出栈顶元素peek()返回栈顶元素is_empty()判断栈是否为空size()返回栈的元素个数这里我们用python的list来实现栈的操作classStack(object):"...
代码星球 ·2020-04-04

「数据结构与算法(Python)」(二)

在程序中,经常需要将一组(通常是同为某个类型的)数据元素作为整体管理和使用,需要创建这种元素组,用变量记录它们,传进传出函数等。一组数据中包含的元素个数可能发生变化(可以增加或删除元素)。对于这种需求,最简单的解决方案便是将这样一组元素看成一个序列,用元素在序列里的位置和顺序,表示实际应用中的某种有意义的信息,或者表示...
代码星球 ·2020-04-04

「数据结构与算法(Python)」(一)

算法是计算机处理信息的本质,因为计算机程序本质上是一个算法来告诉计算机确切的步骤来执行一个指定的任务。一般地,当算法在处理信息时,会从输入设备或数据的存储地址读取数据,把结果写入输出设备或某个存储地址供以后再调用。算法是独立存在的一种解决问题的方法和思想。对于算法而言,实现的语言并不重要,重要的是思想。算法可以有不同的...
代码星球 ·2020-04-04

Java实现常见基础排序算法

1.直接插入排序在插入第i个记录的时,R1,R2...已经排好序,这时将关键字R依次与R1...比较,从而找到应该插入的位置,插入位置以及其后的记录依次往后移动。时间复杂度O(n^2)    空间复杂度O(1) 2.冒泡排序首先将第一个记录的关键字和第二个记录的关键字进...

使用寻路算法写的一个小项目

用寻路算法写的一个小项目地址 https://a1115040996.github.io/arithmetic/html/寻路应用.html 没来得及仔细优化,后面再优化 代码如下<!DOCTYPEhtml><html><head><metacha...

谷歌大脑提出AutoML-Zero,只会数学运算就能找到AI算法,代码已开源

https://www.qbitai.com/2020/03/12245.htmlAlphaGo战胜了人类最强棋手,但前提是它先学会了人类棋谱,离不开人类指导。接着谷歌又推出了AlphaGoZero,只让AI知道围棋规则,从零开始学下棋,结果再次登上棋艺顶峰。AI既然能从零学习围棋,是否可以从零开始摸索机器学习算法?当...

某种 找换硬币问题的贪心算法的正确性证明

一,问题介绍最近一直在看贪心算法的正确性证明(如何证明贪心算法获得的解一定是最优解),感觉“剪枝”技巧用得比较多。再看了下《算法导论》中贪心算法一章里面的一个练习---找换硬币问题。这个问题对于某些面值的硬币是有最优解的,故记录下其中的一些证明思路。考虑用最少的硬币数来找n分钱的问题,假设每个硬...

部分背包问题的贪心算法正确性证明

一,部分背包问题介绍首先介绍下0-1背包问题。假设一共有N件物品,第i件物品的价值为Vi,重量为Wi,一个小偷有一个最多只能装下重量为W的背包,他希望带走的物品越有价值越好,请问:他应该选择哪些物品?0-1背包问题的特点是:对于某件(更适合的说法是:某类)物品,要么被带走(选择了它),要么不被带走(没有选择它),不存在...
首页上一页...100101102103104...下一页尾页