Questions tagged «ds.algorithms»

有关完成任务的明确指令的问题,以及有关时间/内存/等方面的相关分析。

5
加性组合运算在算法设计中的应用
我正在阅读Trevisan和Lovett所做的关于TCS中添加剂组合的应用的调查。这些应用中的大多数属于计算复杂性,例如下限。我不知道加法组合运算符是否也在算法设计中找到了应用。 我提出这个问题的动机是:尽管加法组合和复杂性之间的联系似乎很自然,但我很好奇,在设计有效的算法(如果有)时,如何利用加法未发现的代数结构。指向文学的指针将不胜感激。

1
最佳随机比较排序
所以,大家都知道比较树下界关于(确定性)比较排序算法进行的最坏情况下的比较。它不适用于随机比较排序(如果我们测量最坏情况输入的预期比较)。例如,对于n = 4,确定性下限是5个比较,但是随机算法(随机置换输入,然后应用合并排序)效果更好,具有4 2⌈log2n!⌉⌈log2⁡n!⌉\lceil\log_2 n!\rceiln=4n=4n=4所有输入的期望值进行 3个比较。4234234\frac{2}{3} 该根据信息理论,无上限的约束仍然适用于随机情况,并且可以将其稍微拧紧到 k + 2 (n !− 2 k)log2n!log2⁡n!\log_2 n! 这是因为存在一种最优算法,该算法会随机排列输入,然后应用(确定性)决策树,而最佳决策树(如果存在)是其中所有叶子都处于两个连续级别中的最优决策树。k+2(n!−2k)n!, where k=⌊log2n!⌋.k+2(n!−2k)n!, where k=⌊log2⁡n!⌋.k+\frac{2(n!-2^k)}{n!} \text{, where } k=\lfloor\log_2 n!\rfloor. 如果知道此问题的上限怎么办?对于所有,比较的随机数(期望,对于最坏情况的输入,对于最佳可能的算法)始终严格比最佳确定性算法好(本质上,因为n !永远不是2的幂)。 。但是好多少呢?n>2n>2n>2n!n!n!

2
机密保障问题的这种变体是什么?
输入是宇宙和家庭的子集的ü,说,˚F ⊆ 2 ü。我们假设子集˚F可以覆盖ü,即⋃ Ë ∈ ˚F é = ü。UUUUUUF⊆2UF⊆2U{\cal F} \subseteq 2^UFF{\cal F}UUU⋃E∈FE=U⋃E∈FE=U\bigcup_{E\in {\cal F}}E=U 的增量覆盖序列是在子集的序列,比方说,甲 = { ë 1,ë 2,... ,Ë | A | },即满足FF{\cal F}A={E1,E2,…,E|A|}A={E1,E2,…,E|A|}{\cal A}=\{E_1,E_2,\ldots,E_{|{\cal A}|}\} 1),∀E∈A,E∈F∀E∈A,E∈F\forall E\in {\cal A}, E\in {\cal F} 2)每一个新来的具有新的贡献,即,⋃ 我- 1 Ĵ = 1 Ë 我 ⊊ ⋃ 我Ĵ = 1 …

3
如何在小空间中按概率顺序遍历向量
考虑一个维向量v,其中v 我 ∈ { 0 ,1 }。对于每一个我,我们知道p 我 = P (v 我 = 1 ),让我们假设v 我是独立的。使用这些概率,是否存在一种有效的方法,可以使用输出大小中的空间线性从最大可能性到最小可能性(对关系进行任意选择)从二进制n维向量进行迭代? ñnnvvvv一世∈ { 0 ,1 }vi∈{0,1}v_i \in \{0,1\}一世iip一世= P(v一世= 1 )pi=P(vi=1)p_i = P(v_i = 1)v一世viv_iñnn 举个例子。最有可能的载体是(1 ,0 ,1 )和最有可能是{ 0 ,1 ,0 }。 p = { 0.8 ,0.3 ,0.6 }p={0.8,0.3,0.6}p = \{0.8, 0.3, 0.6\}(1 ,0 …

3
子图包含无向图中长度限制的简单st路径一部分的所有节点和边
非常类似于我先前发布的问题。但是这一次,该图是无向的。 给定 的无向图GGG没有多边缘或环, 源顶点sss, 目标顶点Ťtt, 最大路径长度升ll, 我寻找G′G′G'- 的子图GGG包含任何顶点和在任何边缘GGG(只有那些和),即是由至少一个简单的路径的一部分sss到ttt与长度≤l≤l\leq l。 笔记: 我不需要列举路径。 我正在寻找一种高效的算法(时间和内存),因为我需要在非常大的图形(10 ^ 8个顶点,10 ^ 9个边)上执行该算法。

1
最小化残余有限状态自动机
残留有限状态自动机(RFSA,在[DLT02]中定义)是NFA,具有与DFA相同的一些不错的功能。特别是,对于每种常规语言,总是存在规范的最小尺寸RFSA,并且与DFA一样,RFSA中每个州所识别的语言都是残差的。但是,虽然最小DFA状态与所有残差形成双射,但规范的RFSA状态与素数残差呈双射。这些可以成倍地减少,因此RFSA可以比DFA紧凑得多,可以表示常规语言。 但是,我无法确定是否存在一种有效的算法来最小化RFSA或硬度结果。最小化RFSA的复杂性是什么? 通过浏览[BBCF10],这似乎不是常识。一方面,我希望这很困难,因为许多关于RFSA的简单问题,例如“这个NFA是RFSA吗?” 很难,在这种情况下是PSPACE完整的。另一方面,[BHKL09]表明,在Angluin的最小适度教师模型[A87]中可以有效地学习规范RFSA,并且有效学习最小RFSA和最小化RFSA似乎应该同样困难。但是,据我所知[BHKL09]的算法并不意味着最小化算法,因为反例的大小不受限制,并且不清楚如何有效地测试RFSA的相等性以模拟反例oracle 。例如,测试两个NFA是否相等是PSPACE-complete。 参考文献 [A87] Angluin,D.(1987)。从查询和反例中学习常规集。信息与计算,75:87-106 [BBCF10] Berstel,J.,Boasson,L.,Carton,O.和Fagnot,I.(2010)。自动机的最小化。的arXiv:1010.5318。 [BHKL09] Bollig,B.,Habermehl,P.,Kern,C.和Leucker,M.(2009年)。NFA的盎格鲁式学习。在IJCAI中,9:1004-1009。 [DLT02] Denis,F.,Lemay,A。和Terlutte,A。(2002)。剩余有限状态自动机。基金会信息,51(4):339-368。

2
在色数和矢量色数之间有间隙的小图?
我正在寻找一个小图其矢量色数比色数,更小的χ v(ģ )&lt; χ (G ^ )。GGGχv(G)&lt;χ(G)χv(G)&lt;χ(G)\chi_v(G)<\chi(G) (具有向量色数q是否有一个赋值X :V → [R d,其中直观地与邻近的顶点相关联的矢量相距很远的要求是。⟨ X (v ),X (瓦特)⟩ ≤ - 1 /(q − 1 )。例如,对于q = 3,三角形的顶点就足够了。GGGqqqx:V→Rdx:V→Rdx\colon V \rightarrow \mathbf R^d⟨x(v),x(w)⟩≤−1/(q−1)⟨x(v),x(w)⟩≤−1/(q−1)\langle x(v), x(w)\rangle \leq -1/(q-1)q=3q=3q=3 的曲线图的矢量色数不大于色数较大:。例子是已知的与图的χ v(g ^ )= 3 χ (G ^ )= Ñ δ。(由Karger,Motwani,Sudan撰写的原始论文[JACM,45:246-265](手稿)提出了广义的Kneser图,最近的论文使用了基于随机单位向量的构造。)χv(G)≤χ(G)χv(G)≤χ(G)\chi_v(G)\leq \chi(G)χv(G)=3χv(G)=3\chi_v(G)=3 χ(G)=nδχ(G)=nδ\chi(G)=n^\delta 我认为有示例图与χ v(ķ )= 4和χ …

1
单纯形法的数值稳定性
单纯形算法通常在实数运算中或在离散世界中使用精确计算进行处理。但是,它似乎最常通过浮点算法实现。 这就提出了一个问题,即单纯形算法是否应视为数值算法,尤其是舍入误差如何影响计算。我对实际实现不感兴趣,但对理论基础不感兴趣。 您是否知道有关此问题的任何研究?

1
在幂单调谓词的最小元素
考虑幂集2 |上的单调谓词n | (按包含顺序排序)。通过“单调”我的意思是:∀ X ,ÿ ∈ 2 | n | 使得X ⊂ ÿ,如果P (X )然后P (Ý )。我在寻找一种算法来找到所有的最小元素P,即X ∈ 2 | n | 使得P (x )PPP2| n |2|n|2^{|n|}∀ X ,ÿ∈ 2| n |∀x,y∈2|n|\forall x, y \in 2^{|n|}X ⊂ ÿx⊂yx \subset yP(x )P(x)P(x)P(y)P(y)P(y)PPPX ∈ 2| n |x∈2|n|x \in 2^{|n|}P(x )P(x)P(x)但∀ ÿ⊂ …

1
关于偏序线性扩展的一个问题
如果为您提供了部分订单的集合,则拓扑排序将告诉您集合是否存在扩展到总订单的情况(在这种情况下,扩展名是与每个部分订单一致的总订单)。 我遇到了一个变化: 修正了一个集。你给出的序列σ 1,... σ ķ从绘制的元素的V没有重复(序列是长度在1个之间| V |)。VVVσ1个,… σķσ1,…σk\sigma_1, \ldots \sigma_kVVV| V||V||V| 是否有一种方法可以固定每个序列的方向(正向或反向),以使所得到的链集合(视为部分顺序)允许扩展? 这个问题众所周知吗? 注意:方向是为整个序列选择的。因此,如果顺序是,你可以保持这种状态,或将其翻转到5 - 4 - 2 - 1,但你不能做任何事情。1 - 2 - 4 - 51−2−4−51-2-4-55 - 4 - 2 - 15−4−2−15-4-2-1


3
排序“ k-tonic”序列
我希望有人对此有所了解,所以我不必阅读文献... 考虑数字的序列。考虑序列为n − 1间隔[ x 1,x 2 ] ,[ x 2,x 3 ] ,… ,[ x n - 1,x n ]。显然,如果实线上的任何点最多以2个间隔刺穿,则原始序列是双子序列的。我们将点最多以k个间隔刺入的序列称为kX1个,… ,xñx1,…,xnx_1, \ldots, x_nn − 1n−1n-1[ x1个,X2] ,[ x2,X3] ,… ,[ xn − 1,Xñ][x1,x2],[x2,x3],…,[xn−1,xn][x_1, x_2], [x_2, x_3], \ldots, [x_{n-1},x_n]ķkkķkk-idiotic。视觉上,如果绘制序列图(即按顺序连接点),则以上内容对应于以下条件:没有水平线与图相交超过k次。p一世= (i ,x一世)pi=(i,xi)p_i =(i,x_i)ķkk 看到可以在O (n log k )时间内对惯用序列进行排序并不难(但也不是太容易),这显然是最佳的。ķkkØ (ñ 日志ķ )O(nlog⁡k)O( …

2
将文本均匀分成几行
有一个线性时间算法可以将文本均匀地分成最大宽度的行。它使用SMAWK(或Knuth&Plass),“ evenly”的意思是:http : //en.wikipedia.org/wiki/Word_wrap#Minimum_raggedness 是否有一种算法或该算法的凹成本函数可以在其中考虑我希望文本插入的行数,而不是最大行宽?也是线性时间? 换句话说,我正在寻找一种换行(或段落形成或自动换行)算法,其中输入是所需的行数,而不是所需的行宽。 仅描述一种实际上不可用的方法:每个单词对之间有N个单词和N-1个空格,M是所需的行数(M &lt;= N)。每个空格之后最多可能有一个(可能为零)换行符。现在,该算法将尝试将中断放置在每个可能的组合中,计算“参差不齐”并返回最佳组合。如何更快地做到呢? 另外,这样的问题有名字吗?问题属于什么“家庭”?(例如“装箱”)如果我不需要一个完美的最佳解决方案,那只是一个非常好的解决方案,是否可以更快地解决呢?(如果对于给定的输入总是有相同的,可能不是最优的解决方案,则可以使用某种形式的试探法)。 更新资料 钱德拉·切库里(Chandra Chekuri)提出了“在动态编程的Kleinberg和Tardos一章中的一个问题”。这是一本不错的书,但它基于宽度而不是行数来处理换行。我现在正在尝试解决这个问题,它可能适用于此问题。这是解决方案的一个很好的链接,他们甚至声称可以在线性时间内解决它:http : //web.media.mit.edu/~dlanman/courses/cs157/HW5.pdf 而且,Skiena的《算法设计手册》中有一章“ 8.5分区问题”,这似乎正好是主题,我仍然很难读。(不幸的是,据我了解,它具有二次时间复杂度)

2
成员资格的复杂性-有限的阿贝尔群的测试
考虑以下阿贝尔亚组成员资格测试问题。 输入: 具有任意大的有限阿贝尔群并具有任意大的。G=Zd1×Zd1…×ZdmG=Zd1×Zd1…×ZdmG=\mathbb{Z}_{d_1}\times\mathbb{Z}_{d_1}\ldots\times\mathbb{Z}_{d_m}didid_i 子组的生成集。{h1,…,hn}{h1,…,hn}\lbrace h_1,\ldots,h_n\rbraceH⊂GH⊂GH\subset G 的元素。b∈Gb∈Gb\in G 输出:如果 'yes',其他地方为'no'。b∈Hb∈Hb\in H 问题:可以在传统计算机中有效解决此问题吗?如果在传统图灵机的通常意义上使用时间和内存资源,我认为该算法有效。注意,对于任何子组,我们都可以假设。此问题的输入大小为。O(polylog|G|)O(polylog|G|)O(\text{polylog}|G|)n=O(log|G|)n=O(log⁡|G|)n= O(\log|G|)HHH⌈log|G|⌉⌈log⁡|G|⌉\lceil \log|G|\rceil 有点动力。从直觉上看,似乎可以使用算法来解决同余线性系统或线性双色子方程组(请参阅下文)。但是,似乎在使用整数进行计算时会使用不同的计算效率概念,例如:强多项式时间与弱多项式时间,代数与位复杂度。我不是这些定义的专家,我找不到明显解决此问题的参考。 更新:问题的答案是“是”。 在一个较晚的答案中,我提出了一种基于史密斯范式的方法,该方法对于具有规定格式的任何组都是有效的。 Blondin的答案表明,在所有都为且的形式的特殊情况下是“微小整数”,那么问题就属于。微小的整数随输入大小呈指数减小。ð 我 = Ñ Ë 我我 Ñ 我,ë 我NC 3 ⊂ P ø (日志的日志|甲|)didid_idi=Neiidi=Nieid_i= N_i^{e_i}Ni,eiNi,eiN_i, e_iNC3⊂PNC3⊂P\text{NC}^3\subset \text{P}O(loglog|A|)O(log⁡log⁡|A|)O(\log\log|A|) 在我的回答中,我使用“正交子组”来解决此问题,但是我认为这不是必需的。将来,我将基于我正在阅读的连续梯形表格方法,尝试提供更直接的答案。 一些可能的方法 该问题与求解全等线性系统和/或线性双色子方程密切相关。为了简单起见,我简要总结了这些连接。 以为矩阵,其生成集的元素 。以下方程组{ h 1,… ,h n }AAA{h1,…,hn}{h1,…,hn}\lbrace h_1, \ldots, h_n \rbrace AxT=⎛⎝⎜⎜⎜⎜h1(1)h1(2)⋮h1(m)h2(1)h2(2)⋮h2(m)……⋯…hn(1)hn(2)⋮hn(m)⎞⎠⎟⎟⎟⎟⎛⎝⎜⎜⎜⎜x(1)x(2)⋮x(n)⎞⎠⎟⎟⎟⎟=⎛⎝⎜⎜⎜⎜b(1)b(2)⋮b(m)⎞⎠⎟⎟⎟⎟modd1modd2⋮moddmAxT=(h1(1)h2(1)…hn(1)h1(2)h2(2)…hn(2)⋮⋮⋯⋮h1(m)h2(m)…hn(m))(x(1)x(2)⋮x(n))=(b(1)b(2)⋮b(m))modd1modd2⋮moddm Ax^{T}= …

2
在最大独立集上承诺的上限的近似图着色
在我的工作中出现以下问题: 是否存在一种已知的算法,可以在没有独立的65阶集合的情况下近似图的色数?(因此,alpha(G)&lt;= 64是已知的,| V | / 64是小数下限,| V |是小数上限。但是在这种特殊条件下是否有更好的证明的近似值?) 如果我们放松到分数色数怎么办?并在平均情况下达到“良好”的运行时间?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.