Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 需要关于编程难题解决算法的帮助吗_Algorithm - Fatal编程技术网

Algorithm 需要关于编程难题解决算法的帮助吗

Algorithm 需要关于编程难题解决算法的帮助吗,algorithm,Algorithm,我想提高我的编程技能,当我参加一些编程比赛的时候,我觉得每一个挑战都是如此艰巨,以至于我无法解决它,我对编码有很好的了解,但我决定了解决特定问题所需的算法,因为有人能告诉我应该读哪本书吗?托马斯·H·科曼、查尔斯·E·莱瑟森、罗纳德·L·里维斯特、克利福德·斯坦的《算法导论》。 涵盖几乎所有内容,从图论到几何算法和所有相关数据结构,此外,他们使用常用的“大O”表示法来表示所解释算法的效率。大多数情况下,针对同一个问题会出现多种算法,以及它们的优缺点。我建议首先熟悉您选择的编程语言。一旦您对自己的

我想提高我的编程技能,当我参加一些编程比赛的时候,我觉得每一个挑战都是如此艰巨,以至于我无法解决它,我对编码有很好的了解,但我决定了解决特定问题所需的算法,因为有人能告诉我应该读哪本书吗?托马斯·H·科曼、查尔斯·E·莱瑟森、罗纳德·L·里维斯特、克利福德·斯坦的《算法导论》


涵盖几乎所有内容,从图论到几何算法和所有相关数据结构,此外,他们使用常用的“大O”表示法来表示所解释算法的效率。大多数情况下,针对同一个问题会出现多种算法,以及它们的优缺点。

我建议首先熟悉您选择的编程语言。一旦您对自己的语言和数据结构有了信心,就可以自信地应对任何编程挑战。养成在一张纸上处理所有边缘案例的完整代码的习惯,而不是在练习中编写简单的伪代码


现在要解决算法问题,首先要通过书本或在线资源掌握基本的算法功能。如果您使用的是coreman(algo好书),那么您可能需要了解不同排序技术的基本概念,堆、队列、哈希、贪婪和动态算法。对于一些主题,我建议在线研究,比如动态编程和散列。几乎70-80%的面试问题要么是散列式的,要么是基于DP的。然后寻找这些算法的主要示例及其解决方案。一旦你的思想建立起来,你就能够快速思考任何算法问题。

这个问题主要是基于观点的。StackOverflow代表特定的情况。它完全是感知。你只需要从经验中学习,这样它就会持续很长时间,就像你说的“每一个挑战都是如此艰巨,我无法解决”,当你第一次看到这样的问题时,这可能会保持良好状态,因此首先你可能会失败并学习,但下次你有一次经验,这就是它对我的作用,是的,书籍是快速的来源,但是试着获得自己的经验也很重要。。无论如何,这都是离题的欢迎来到stackoverflow…!!;)在TopCoder、HackerRank、HackerEarth、CodeChef、SPOJ和许多其他网站上练习解决简单的编程问题。熟能生巧!MissingNumber&vishram0709我试着在建议的网站上解决问题,我在该网站上做了很好的编码工作,但在参加任何hackenthon活动时,我觉得解决了所有的挑战,只是缺乏关于数学公式和算法的知识。。但我还是会尽力坚持。。谢谢你的建议:)谢谢你。。你能推荐一本书吗?它涵盖了数学公式和技巧,可以快速解决给定的问题??我推荐的那本书大部分时间都使用数学来解释问题和证明伪代码。他们用数学把问题抽象化,用伪代码解决。对于可以解决几乎所有问题的纯数学算法,请参阅线性规划和图论章节。有了这两个,你进入了一个解决问题的全新世界:)然而,你可能想从简单开始,研究数组的(高效)排序和搜索,以熟悉一般的算法和符号。谢谢。。我很期待……)谢谢你,伙计。。我会做需要的事