问题标签 [palindrome]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
10 回答
40540 浏览

algorithm - Manacher 算法(在线性时间内找到最长回文子串的算法)

在花了大约 6-8 小时试图消化 Manacher 的算法之后,我准备认输。但在我这样做之前,这是黑暗中的最后一枪:谁能解释一下?我不关心代码。我希望有人解释算法

这里似乎是其他人似乎喜欢解释算法的地方:http: //www.leetcode.com/2011/11/longest-palindromic-substring-part-ii.html

我理解你为什么要转换字符串,比如 'abba' 到 #a#b#b#a# 之后比我迷路了。例如,前面提到的网站的作者说算法的关键部分是:

这似乎是错误的,因为他/她曾说过当 P[i'] = 7 并且 P[i] 不小于或等于 R - i 时 P[i] 等于 5。

如果您不熟悉该算法,这里还有一些链接:http ://tristan-interview.blogspot.com/2011/11/longest-palindrome-substring-manachers.html (我试过这个,但是术语很糟糕而且令人困惑。首先,有些东西没有定义。另外,变量太多。你需要一个清单来回忆什么变量指的是什么。)

另一个是:http ://www.akalin.cx/longest-palindrome-linear-time (祝你好运)

该算法的基本要点是在线性时间内找到最长的回文。它可以在 O(n^2) 中完成,只需最少到中等的努力。该算法应该非常“聪明”以将其降低到 O(n)。

0 投票
1 回答
1118 浏览

algorithm - 在给定字符串中找到最长回文的最佳算法是什么?

可能重复:
编写一个函数,返回给定字符串中最长的回文

给定长度为“n”的字符串,我需要最长的回文,其时间和空间复杂度应该是有效的。

任何人都可以至少用伪代码帮助我吗?

0 投票
2 回答
1343 浏览

c# - 给定一个正整数,我的代码对于找出下一个回文是否有效?

问题陈述:对于给定的正数,我必须立即找出下一个回文。例如:

我想知道我的代码是否有效,效率如何?这是解决问题的好方法吗?

逻辑解释:我已经设置i到数字的最左边,j最右边的位置我基本上是在比较两个数字。我总是分配num[j]=num[i],并跟踪数字是否大于原始值、小于或等于。最后,即:j-i==1 or j==i,根据数字的位数是偶数还是奇数,我看看数字是否变得更大,并做出相应的决定。

编辑:这个数字可以长达 100,000 位!..这是问题陈述的一部分,所以我试图避免暴力方法。

0 投票
4 回答
7858 浏览

java - 通过删除字符从现有字符串创建回文

我如何通过删除零个或多个字母来确定您可以从一个单词中获得的最长回文的长度。

例如:amanQQQapl12345anacaZZZnalpaXXXna67890ma
最长的回文将是 21 位数字。

0 投票
3 回答
642 浏览

python - 用嵌套循环测试回文

我知道这是最简单和最简单的检查方法:

但只是为了练习,我想用嵌套的 for 循环来测试它(使用这个reversed()函数——我花了几个小时,但不太清楚在哪里做正确的事continuebreak

0 投票
2 回答
4966 浏览

python - 在python中生成所有3位回文数的列表

我想在 python 中生成所有 3 位回文数的列表。我可以用粗略的方式编写代码,但有没有使用列表理解itertools等直观的方式?

而且,如果给定的数字是k数字而不是3,该怎么办?

0 投票
1 回答
12889 浏览

php - 在 PHP 中检查整数是否为回文?

可能重复:
如何检查一个数字是否是回文?

如果不允许将整数视为字符串并且不允许进行类型转换,我们如何确定该数字是否为回文(在 PHP 中)?

我想出的程序是:

在步骤“$number/=10”处,生成的结果将不是造成问题的整数。

0 投票
5 回答
23253 浏览

algorithm - Convert string to palindrome string with minimum insertions

In order to find the minimal number of insertions required to convert a given string(s) to palindrome I find the longest common subsequence of the string(lcs_string) and its reverse. Therefore the number of insertions to be made is length(s) - length(lcs_string)

What method should be employed to find the equivalent palindrome string on knowing the number of insertions to be made?

For example :

1) azbzczdzez

Number of insertions required : 5 Palindrome string : azbzcezdzeczbza

Although multiple palindrome strings may exist for the same string but I want to find only one palindrome?

0 投票
1 回答
417 浏览

java - java将next()分配给字符串或分解成字符

我正在尝试创建一个程序来读取文件并检查文本是否为回文。代码可以编译,但并没有真正起作用。

问题是我不知道如何将完整的标记分解为字符或将其分配给字符串,以便使用字符串的长度将push每个字母或数字(排队)放入stack(队列)。任何人都可以为此提出解决方案吗?

0 投票
3 回答
460 浏览

java - 使用 Java 将随机数转换为回文

我正在尝试使一个随机数成为回文。例如,生成的随机数 1234 应该变成 12344321。

所以我写了这段代码:

有时它有效,例如,我得到数字 6540 和回文 65400456。但由于某种原因,在大多数情况下,我得到例如数字 94229 和回文 833057657。或者数字 82270 和回文 -362927364。

为什么会这样?这段代码有什么问题以及如何修复它?

谢谢!