![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java数据结构
记录数据结构学习心得
lecy6
职业搬砖小王子
展开
-
最长回文字串
一、描述求一个字符串的最长回文字串二、思路中心扩展法,就是遍历一个字符串每一个字符,看其向左向右扩展是否是回文串,回文串分为奇数回文串和偶数回文串步骤:1边界值判断2遍历字符串判断奇数回文串判断偶数回文串3返回结果回文串判断函数代码//最长回文字串,中心扩展法 public String longestPalindrome(String s) { if(s.length()<2) return s; //遍历字符串 int原创 2020-08-25 10:55:49 · 105 阅读 · 0 评论 -
算法空间复杂度
1 什么是空间复杂度空间复杂度就是一段程序运行所占用的内存,可以简单理解为一段程序所有创建的变量,根据字节计算内存。如创建了n个整型变量,则内存占用n*4个字节(java),则空间复杂度为O(n)2 用大O表示空间复杂度请参考本博客另一篇时间复杂度,表示方法同理...原创 2020-08-02 22:16:13 · 215 阅读 · 0 评论 -
算法时间复杂度
最近在看数据结构,以下是自己对算法时间复杂度的一个简单理解1 什么是时间复杂度时间复杂度就是一个程序运行的时间,可以简单理解为一个程序所有代码行数,其中重点关注核心代码执行次数,如执行一个n次for循环,则时间复杂度就为O(n)2 用大O表示时间复杂度一个程序会有很多核心代码,如两个for循环就是O(2n),将所有核心代码执行的次数加到一起,会是一个关于n的多项式,可以使用以下时间复杂度表示规则进行简化:用常数1取代运行时间中的所有加法常数;在修改后的运行次数中,只保留高阶项;如果最高阶项存原创 2020-08-02 22:04:04 · 127 阅读 · 0 评论