换岗的事情终于有了阶段性的进度,这是推进最快也是最先有较大进度的长远计划,其他的都需要更大勇气与更长时间的坚持,即使在几乎看不见希望的情况下,也要顽强的坚持下去,坚信事情会逐渐向想要的方向发展。
今日进度:
1.换岗的事情取得了阶段性成果
2.坚定自己的目标,持续地努力,事情会慢慢向好的方向发展,在没有干劲的时候即使靠机械性的刷题和学习也要保持状态
3.准备把从开始记录的第一天起的内容总结一下,这个转行专栏虽然没有达到最终的目标,但是改变了现有的处境,也许是时候开始写新的专栏了
学习笔记:
1.视图层(View):负责格式化数据并把它们呈现给用户,包括数据展示、用户交互、数据验证、界面设计等功能。
控制层(Controller):负责接收并转发请求,对请求进行处理后,指定视图并将响应结果发送给客户端。
数据模型层(Model):模型对象拥有最多的处理任务,是应用程序的主体部分,它负责数据逻辑(业务规则)的处理和实现数据操作(即在数据库中存取数据)
2.SUN 公司推出 JSP 技术的同时,也推出了两种 Web 应用程序的开发模式。即 JSP+JavaBean 和 Servlet+JSP+JavaBean。
3.JSP+JavaBean 中 JSP 用于处理用户请求,JavaBean 用于封装和处理数据。该模式只有视图和模型,一般把控制器的功能交给视图来实现,适合业务流程比较简单的 Web 程序。
4.Servlet+JSP+JavaBean 中 Servlet 用于处理用户请求,JSP 用于数据显示,JavaBean 用于数据封装,适合复杂的 Web 程序。
5.LRU(Least Recently Used)是一种常见的页面置换算法,在计算中,所有的文件操作都要放在内存中进行,然而计算机内存大小是固定的,所以我们不可能把所有的文件都加载到内存,因此我们需要制定一种策略对加入到内存中的文件进项选择。
6.LRU的设计原理就是,当数据在最近一段时间经常被访问,那么它在以后也会经常被访问。这就意味着,如果经常访问的数据,我们需要然其能够快速命中,而不常访问的数据,我们在容量超出限制内,要将其淘汰。
7.5. 最长回文子串
给你一个字符串 s,找到 s 中最长的回文子串。
输入:s = “babad”
输出:“bab”
解释:“aba” 同样是符合题意的答案。
解题思路:使用二维数组dp[i][j]来存储从i到j的子字符串是否是回文串,有三种情况当只有一个字符时dp[i][i]必为true;当有两个字符时dp[i][i+1]取决于两个字符是否相等;当大于两个字符时,只有当s[i]与s[j-1]相等,同时dp[i][j]的子字符串的状态dp[i+1][j-1]也为true时,dp[i][j]才为true。遍历整个字符串,记录更新回文子串的起始坐标及长度,可以得到的最大长度子字符串的起始下标和终止下标。
public String longestPalindrome(String s) {
int maxLen = 1;
int begin = 0;
int len = s.length();
boolean dp[][] = new boolean[len][len];
//将只有一个字符串的情况设为true
for(int i=0; i=len){
break;
}
if(charArray[i] != charArray[j]){
dp[i][j] = false;
}
else if(j-i < 3){
dp[i][j] = true;
}
else{
dp[i][j] = dp[i+1][j-1];
}
if(dp[i][j] && j-i+1 > maxLen){
maxLen = j-i+1;
begin = i;
}
}
}
return s.substring(begin, begin+maxLen);
}
}
今天还是早点休息吧,早上稍微起晚了一点,明天继续早起,继续努力!



