14 TCS的两个部分是算法和复杂性。我简单地说,算法是对上限的研究,它表明您可以(在给定的受限资源下)做某事,而复杂性则是在显示没有一些最小的资源就无法做。 因此,经常在决策模型中陈述算法问题,以将其置于复杂性类别中。 但是,令我一直困扰的是,某些基本算法从来没有被完全提及属于某个特定类。一个例子是(比较)排序。尽我所能尝试,一个相关的类似乎太不足了(真的,是否只是在检查日志空间中对结果进行了排序?那似乎太弱了,或者我没有正确的决策版本)。 比较排序所处的最佳/最合适/最有用的复杂性类别是什么? cc.complexity-theory sorting — 米奇 source
17 对于(在 -reduction下),排序问题实际上已经完成。一个标准的来源是Vollmer的书的 1.4.3节。Ť ç0ŤC0A C0一种C0 注意是决策问题的类别,但我们通常将排序视为函数问题,即,我们要以不降序的顺序输出数字。但是,我们还可以将排序定义为决策问题,如下所示:Ť ç0ŤC0 给定一个数字和两个数字中的序列,我们想通过按非对进行排序来确定是否位于序列中的位置。请注意,为避免歧义,当,如果,我们希望在之前。一种1个,... ,一ñ一种1个,…,一种ñķ ,p ∈ [ Ñ ]ķ,p∈[ñ]一种ķ一种ķpp一种1个,... ,一ñ一种1个,…,一种ñ一种一世= 一个Ĵ一种一世=一种Ĵ一种一世一种一世一种Ĵ一种Ĵ我< j一世<Ĵ — 戴乐 source 优秀...指定为什么正式决策问题? — 米奇 1 在您的答案中加入参考将是双重的。 — Oleksandr Bondarenko @Mitch和@Okeksandr:感谢您的评论!我只是扩展了我的答案以阐明这些观点。 — 戴勒 这听起来像订单统计的决策问题。一切都放在正确的位置是否有相关的问题?给定序列和上的置换类的东西,确定。这和你一样难。包括课程更难或更完整吗?a1...ana1...anσσ[1..n][1..n]∀1≤k<j≤n,aσk<aσj∀1≤k<j≤n,aσk<aσj — 米奇 2 @Mitch:我认为检查所有内容是否都在正确的地方实际上比排序容易。直观上,可以检查对于所有可能的对与并联,这相信是可以做到在。对于上述排序问题,您需要能够“计数”以找出数字在线性排序中的正确位置。aσk<aσjaσk<aσj(aσk,aσj)(aσk,aσj)ķ<jk<Ĵ一种C0AC0 — 戴勒
0 我相信FP是您想要的。 — 尼古拉斯·曼库索(Nicholas Mancuso) source 好吧,我是在寻找相关的决策复杂性类,而不是功能性类,但是即使如此,我还是可以肯定,比较排序在P-complete(或FP-complete)附近是不可能的,所以我期望预计将在/完成的较小班级。 — 米奇 我不知道完整性是您提出问题的条件之一。作为决策问题(如果不考虑完整性约束),为什么P不可以作为答案?使用DTM,您可以在多项式时间内生成和验证证书。 — Nicholas Mancuso 给定一个普遍的问题,我通常想知道的不仅是多项式时间,而且是可能存在的最小类。我想知道它是否在LOGCFL,NL,L,AC_0等中。是您“做不到”更好的一种方法。因此,尼特不是我的问题的要求,但答案中可能是有可能的。 — 米奇