最大团问题的小思考&算法demo

/* fore

今天挖维基百科的图论(NP问题那么多,我最爱看这个八卦了)

挖了挖完全NP问题,找到了个最大团问题。

这个名字有点怪,维基百科也没有相关词条,度娘是这样解释的——

给定无向图G=(V,E),其中V是非空集合,称为顶点集;EV中元素构成的无序二元组的集合,称为边集,无向图中的边均是顶点的无序对,无序对常用圆括号“( )”表示。如果UÍV,且对任意两个顶点uvU有(u,v)∈E,则称UG的完全子图。G的完全子图UG的团当且仅当U不包含在G的更大的完全子图中。G的最大团是指G中所含顶点数最多的团。

如果V且对任意uvU有(u,v)不属于E,则称UG的空子图。G的空子图UG独立集当且仅当U不包含在G的更大的空子图中。G的最大独立集G中所含顶点数最多的独立集。

对于任一无向图G=(V,E),其补图G‘=(V‘,E‘)定义为:V‘=V,且(u,v)∈E当且仅当(u,v)∉E

如果UG的完全子图,则它也是G‘的空子图,反之亦然。因此,G的团与G‘的独立集之间存在一一对应的关系。特殊地,UG的最大团当且仅当UG‘的最大独立集

 

*/

假如我没有搞错,那么这个完全NP问题就是在一堆麻线球中,找一个完全图咯?

打开脑洞,建立一个物理模型。

假设每一个顶点是一个小池,边是渠道,A顶点装有a流体,以此类推,这种流体有一个神奇的性质——它只能流过一个渠道。

然后按顺序图遍历一次//为什么不能画图啊摔!

1,  按路径遍历图/*路径(X,Y)指X连通Y*/

比如 A, B,C,D,E……X,Y,Z,假设图GG有n个顶点,G[n]

G[0]=A ,G[1]=B...

2,每一个顶点建立一个缓存池,存放其中流体。

有路径(A,B)(B,C)(A,D)(B,D)(C,D)(B,C)用集表示

A{a,b, , d}

B{a,b, c,d}

C{  ,b,c,d}

D{  ,b,  ,d}

for(i=0;i<n;i++){

if (A[i]^B[i]^C[i]^D[i]==1)

printf("%d,%c",i,GG[i]);

}

3,{GG[i]}就是最大团咯?

写得很混乱,不知道对不对……

一起说是随笔,不如说是草稿。

时间: 2024-10-18 02:43:41

最大团问题的小思考&算法demo的相关文章

K-Means算法Demo

简介:本Demo是参照这个网站上的Demo自己用Java实现的.将Java打包为Jar,再将Jar转为exe,源代码及程序Demo下载请点我. K-Means算法简介 我尽量用通俗易懂但不规范的语言来描述K-Means算法. K-eans算法是数据挖掘十大算法之一,是一种聚类算法,也是最简单的无监督学习(unsupervised learning)算法之一. 假设有一个元素集合,我们的目标是将该集合中的元素划分成K个簇(就是K个部分),每个簇内的元素相似度较高,不同簇的元素相似度较低(正所谓物以

微信小程序商店 | 即速商店_团购类小程序

即速应用商店-分类最齐全的小程序商店,收录当前最新最热门小程序,汇集各行业小程序案例及评测,在这里可以轻松找到各种实用好玩的小程序,也可 免费发布 自己的小程序获取 巨大流量 . PS:关于微信小程序商店_即速商店?   如何免费发布微信小程序,获取流量? 微信小程序商店|即速商店_团购小程序 要求:该类目下提交的微信小程序须具备购物.团购相关属性.如小程序内发布虚假违法信息,由小程序主体承担.点击 > 即刻提交 < 本期团购小程序推荐: ? 网易一起拼lite 测评:网易一起拼小程序只做优质

小浩算法|一文让你学会如何用代码判断"24"点

"24点"是一种数学游戏,正如象棋.围棋一样是一种人们喜闻乐见的娱乐活动.它始于何年何月已无从考究,但它以自己独具的数学魅力和丰富的内涵正逐渐被越来越多的人们所接受.今天就为大家分享一道关于"24点"的算法题目. 话不多说,直接看题. 题目:你有 4 张写有 1 到 9 数字的牌.你需要判断是否能通过 *,/,+,-,(,) 的运算得到 24. 示例 1: 输入: [4, 1, 8, 7] 输出: True 解释: (8-4) * (7-1) = 24 示例 2:

C++回溯算法Demo:以4皇后问题为例

回溯算法实际上是构造一棵推理树,并由树的叶子节点反向输出历史步骤: 其中,树的构建过程较为复杂:一种简化的方法是使用链表连接和构造各个节点的关系: 以4皇后问题为例,采用C++ vector容器--避免使用指针(当然换成了整数来代替指针表达对象的位置),解决了该问题.整体算法思路清晰,便于理解. 见代码:与书中不同,此代码实际输出的是所有4皇后问题的不同走法 //title:4皇后问题的回溯算法求解 //Demo: 1)回溯算法实现4皇后问题:2)难点:树形结构的表达:3)用线性容器表达树形结构

weapp微信小程序初探demo

https://github.com/donglegend/weapp-demo 参考文档开发工具安装微信weapp API git项目源码微信小程序 demo效果展示效果预览

iOS 百度地图 小的特点demo

先上图的样子 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDEyMzIwOA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" width="300" > 下载代码前须知 该代码仅仅能在真机測试下执行,模拟器下会报错.由于demo 非常贵.所以.. . 代码中的凝视非常全,由于我是新手,写的好不好不要笑话. 代码下载

九大排序算法Demo

1. 冒泡排序 冒泡排序(Bubble Sort)是一种简单的排序算法.它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端. 1 int[] array = {5, 4, 3, 2, 1}; 2 3 boolean isChanged = false; 4 for (int i = 0; i < array.length; i

01——微信小程序官方demo讲解——文件结构

1.环境概览 首先环境配置的部分略过,打开小程序开发工具.选择一个空目录,即可开始一个demo项目. 其中新建成功后的目录如图所示: 2.文件结构描述 如图所示,左边是界面展示,右边是目录结构. 目录大体分为3部分:app部分.pages部分.其他部分. app主要放置一些全局性的变量以及配置.就相当于浏览器中的windows.node中的global. pages中放的是一个一个的页面.一个页面由一个文件夹组成,文件夹内由四部分组成,js,wxml,wxss,json. 其中js主要是该页面的

02——微信小程序官方demo讲解——app部分

第一节讲了目录结构,这节主要讲解下目录中app.js部分. 它由三部分组成app.js.app.json与app.wxss 1.JS部分 1.1概述 //app.js App({ onLaunch: function () { // 展示本地存储能力 var logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) // 登录 wx.login({ success