会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
瑜琦
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
8
9
10
下一页
2021年7月4日
408算法练习——马走日
摘要: 马走日 一、题目描述 假设国际象棋棋盘有5*5共25个格子,设计一个程序,使棋子从初始位置(如图)开始跳马,需要将棋盘格子全走一遍,每个格子只允许走一次,马的走法只能走“日字形” 问:有多少解 二、解题思路 采用回溯法依次试探下一步的走法,如果下一步走法不合理就不再继续而转向上一步走法。 基本思想:
阅读全文
posted @ 2021-07-04 20:12 瑜琦
阅读(1107)
评论(0)
推荐(0)
2021年6月30日
408算法练习——买股票
摘要: 买股票 一、问题描述 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。
阅读全文
posted @ 2021-06-30 22:07 瑜琦
阅读(220)
评论(0)
推荐(0)
2021年6月29日
408每日算法——反转整数
摘要: 反转整数 一、问题描述 给定一个32位有符号整数,将整数中得到数字进行反转 示例: 输入:123 输出:321 输入:-123 输出:-321 输入:120 输出:21 二、算法思想 取一个数的个位数只需要这个数对10取余,可以通过不断的对10取余然后除10,依次取出个位、十位……的数。最后就能得到
阅读全文
posted @ 2021-06-29 20:49 瑜琦
阅读(74)
评论(0)
推荐(0)
2021年6月27日
算法提高——动态规划练习03
摘要: 最长回文子串 一、问题描述 给出一个字符串S,求S的最长回文子串的长度 例如:“PATZJUJZTACCBCC”的最长回文子串为"ATZJUJZTA" 二、解题思路 方法一:暴力解法,新建两个指针在字符串两端点,依次判断指针区间内的字符串是否为回文串,如果是则返回长度,否则就缩小区间再次判断。 方法
阅读全文
posted @ 2021-06-27 21:21 瑜琦
阅读(43)
评论(0)
推荐(0)
2021年6月23日
算法提高——动态规划练习
摘要: 最长公共子序列 一、问题描述 给定两个字符串或数字序列A和B,求一个字符串,使得这个字符串是A和B的最长公共部分(子序列可以不连续),返回长度 案例,字符串"sadstory"和"adminsorry"的最长公共子序列为"adsory" 二、问题分析 暴力解法,假设A和B的长度为n和m,那么找出A在
阅读全文
posted @ 2021-06-23 21:16 瑜琦
阅读(52)
评论(0)
推荐(0)
2021年6月22日
算法提高——动态规划练习
摘要: 最长不下降子序列 一、问题描述 现在给出一个数字序列(整数),要求找出它的一个最长不下降子序列,返回这个子序列的长度,即该数字中最长的非递减子序列,元素可以不是连续的,但要满足元素间的前后位置关系。 例如:序列A={1,2,2,-1,-2,7,9},则A的最长不下降子序列为{1,2,2,7,9} 二
阅读全文
posted @ 2021-06-22 21:33 瑜琦
阅读(78)
评论(0)
推荐(0)
2021年6月21日
算法提高——动态规划02
摘要: 动态规划的递推写法 一、数塔问题 如图所示的一个数塔存储在一个二维数组中,f[i][j],其中i表示从上往下数的层数,j表示元素在这层从左往右数的位置,例如f[2][1]=8;现在从第一层向下走,每经过一个节点就把节点值累加,到达最后一层后返回,请问,在所有可能的遍历和中,能得到的最大值是多少。 如
阅读全文
posted @ 2021-06-21 20:28 瑜琦
阅读(120)
评论(0)
推荐(0)
2021年6月20日
算法提高——动态规划
摘要: 动态规划01 一、什么是动态规划 动态规划是一种用来解决一类最优化问题的算法思想。将一个复杂的问题分解成若干个子问题(有点像分治),然后综合子问题的最优解找到原问题的最优解(这里有点像贪心)。在求解每个子问题的时候,每个求解过的子问题会被记录下来,在求解同样的子问题时就会直接读取上次被记录的结果,从
阅读全文
posted @ 2021-06-20 20:22 瑜琦
阅读(83)
评论(0)
推荐(0)
2021年6月19日
算法提高——链表练习2
摘要: 链表练习2 PAT乙级1025/甲级1074:反转链表 算法思路:将链表分块,每k个节点一块,针对每块中的节点进行反转操作 反转链表的伪代码 设该区域头节点为head,定义指针p,q,r p=head; q=p->next p->next = null; while(k--){ r = q->nex
阅读全文
posted @ 2021-06-19 20:17 瑜琦
阅读(32)
评论(0)
推荐(0)
2021年6月18日
算法提高——链表练习
摘要: 链表练习 题目:PAT甲级1052 题目大意:给出一个链表,要求按值的递增顺序对链表进行排序 输入格式:第一行,输入N为链表节点数目,5位的链表首地址,以后每行为链表各个节点的信息(地址:值:后继节点地址),后继地址为-1表示NULL 输出格式:第一行输出节点数目,排序后链表首节点地址,以后每行为各
阅读全文
posted @ 2021-06-18 21:29 瑜琦
阅读(30)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
9
10
下一页
公告