Sixzeroo


  • 首页

  • 分类

  • 标签

  • 归档

  • 友链

  • 关于

  • 搜索

凸包问题

发表于 2017-04-17 | 分类于 算法 | 阅读次数:
字数统计: 668 字

首先是凸包的定义,假设平面内有一些点,这些点中的一部分组成一个多边形,将其他的点都包含起来,当这个多边形是凸多边形的时候,我们就把他当成是一个凸包。
解决凸包问题有很多种算法,比较常见的有O(n^3)的暴力穷举算法以及O(nlogn)d的分治算法,这里讲的是一个时间复杂度为O(nlogn)的Graham扫描法。

阅读全文 »

最大团问题

发表于 2017-04-15 | 分类于 算法 | 阅读次数:
字数统计: 1,354 字

最大团问题(Maximum Clique Problem, MCP)是图论中一个经典的组合优化问题,也是一类NP完全问题。看到前面的描述可能会觉得很复杂,但是最大团的定义其实很简单,通俗点讲最大团问题就是一个最大的完全子图的问题。
因为是NP完全问题,自然没有多项式时间复杂度求解的算法,解决这个问题有很多有效的算法:遗传算法、模拟退火算法、禁忌算法等等,但是这些算法比较高级,这里讲一种比较简单的搜索算法。

阅读全文 »

KM算法

发表于 2017-04-10 | 分类于 算法 | 阅读次数:
字数统计: 1,616 字

之前讲到了匈牙利算法,今天讲一个在匈牙利算法的基础上的解决最大全的完美二分匹配的问题的KM算法,这个算法在理解上面可能有一点难度,不过有一句话说得好:组合数学靠运气,计算几何瞎暴力,图论一顿套模板,数论只会gcd。23333.。。

阅读全文 »

POJ 3276 (开关问题)

发表于 2017-04-09 | 分类于 算法 | 阅读次数:
字数统计: 790 字

这道题本来是挑战上面一道经典的例题,这次在Google 的code jam的资格赛里面也出现了。可气的是我忘记怎么做了,只好重新看一遍挑战的书,下面讲一讲我对这道题的理解吧。

阅读全文 »

匈牙利算法

发表于 2017-04-08 | 分类于 算法 | 阅读次数:
字数统计: 1,508 字

今天实验室的“周末算法讲堂”轮到我啦,今天主要讲的是匈牙利算法,主要用来解决最大的二分匹配问题(当然还可以用最大流来解决)。下面把握准备过程的资料整理总结出来吧。(感觉这么点东西讲的东西比较少,实验室的大佬们别介意啊)
后面会讲到在这个的基础上解决最大权完美匹配问题的KM算法

阅读全文 »

初识 朱刘算法

发表于 2017-03-25 | 分类于 算法 | 阅读次数:
字数统计: 1,280 字

又到了每周一次的实验室算法专题分享,这次讲的是的是朱刘算法(好奇葩的算法名字),朱刘算法主要用来解决的是最小树型图的问题,算法整体的理解不是很难结合模板代码比较容易理解。接下来讲讲我的理解吧,当做自己学习的一个总结吧!

阅读全文 »

浅谈 差分约束

发表于 2017-03-18 | 分类于 算法 | 阅读次数:
字数统计: 1,231 字

近期实验室专题学习讲到了差分约束系统,就写点东西来总结一下自己学到的东西吧。首先是一种的比较方便的图的存储方式——链式前向星,然后是在Dijkstra、Bellman-Ford之后的一种非常快的能够求出负环的最短路算法——SPFA,最后是一个最短路的变式——差分约束系统。

阅读全文 »

浅谈可持续化线段树

发表于 2017-03-02 | 阅读次数:
字数统计: 2,021 字

引言

可持续化线段树(又叫主席树、函数式线段树),顾名思义就是保存线段树的所有历史版本,并且利用他们共同的数据来减少时间和空间的消耗
相比普通的线段树维护当前节点对应的区间的信息,可持续化线段树能够记录每次修改后的线段树,可以解决区间第k个数大小的问题。

阅读全文 »

使用uWSGI和nginx来搭建Django应用

发表于 2016-11-30 | 分类于 运维 | 阅读次数:
字数统计: 3,876 字

近期用python的Django写了一个小程序,想部署到服务器上面。网上搜了一下,发现所有使用nginx的解决方案基本上都是来源于这篇文章。所以就把这篇文章翻译了一下,加深自己的理解。

阅读全文 »

POJ 3253 Fence Repair 题解

发表于 2016-11-09 | 分类于 算法 | 阅读次数:
字数统计: 599 字

Fence Repair

题目描述

Farmer John wants to repair a small length of the fence around the pasture. He measures the fence and finds that he needs N (1 ≤ N ≤ 20,000) planks of wood, each having some integer length Li (1 ≤ Li ≤ 50,000) units. He then purchases a single long board just long enough to saw into the N planks (i.e., whose length is the sum of the lengths Li). FJ is ignoring the “kerf”, the extra length lost to sawdust when a sawcut is made; you should ignore it, too.FJ sadly realizes that he doesn’t own a saw with which to cut the wood, so he mosies over to Farmer Don’s Farm with this long board and politely asks if he may borrow a saw.Farmer Don, a closet capitalist, doesn’t lend FJ a saw but instead offers to charge Farmer John for each of the N-1 cuts in the plank. The charge to cut a piece of wood is exactly equal to its length. Cutting a plank of length 21 costs 21 cents.Farmer Don then lets Farmer John decide the order and locations to cut the plank. Help Farmer John determine the minimum amount of money he can spend to create the N planks. FJ knows that he can cut the board in various different orders which will result in different charges since the resulting intermediate planks are of different lengths.

阅读全文 »
1…161718
Sixzeroo

Sixzeroo

172 日志
9 分类
40 标签
RSS
github QQ
© 2021 Sixzeroo | 共 362.5k 字 |
皖ICP备17000842号-1
|
由 Hexo 强力驱动