算法
文章平均质量分 51
murphypu
有理想的弱鸡
展开
-
最优矩阵链乘(经典DP)
最优矩阵链乘[分析] 矩阵链乘可以看成一个表达式,无论加多少括号,一定存在最后一次乘法,而最后一次乘号的左右两边的子表达式一定存在最优解(运算量最小),也就是最优子结构。状态转移方程如下: f(i,j)=min{f(i,k)+f(k+1,j)+pi-1pkpj}; 其中f(i,j)表示第i个矩阵到第j个矩阵的运算量,k为中间乘号的位置,p保存矩阵的行和列,第i原创 2017-04-17 23:55:26 · 1589 阅读 · 0 评论 -
蓝桥杯-算法训练-安慰奶牛
算法训练 安慰奶牛 [题目] Farmer John变得非常懒,他不想再继续维护供奶牛之间供通行的道路。道路被用来连接N个牧场,牧场被连续地编号为1到N。每一个牧场都是一个奶牛的家。FJ计划除去P条道路中尽可能多的道路,但是还要保持牧场之间 的连通性。你首先要决定那些道路是需要保留的N-1条道路。第j条双向道路连接了牧场Sj和Ej(1 <= Sj <= N; 1 <= Ej <= N; Sj !原创 2017-05-01 20:34:05 · 391 阅读 · 1 评论 -
LeetCode-算法-两数之和
LeetCode-算法-两数之和开始刷LeetCode,一个传闻中求职必刷且质量较高的oj。首先看到题库的第一题,是一道可以直接用两个循环的暴力求解,代码如下:class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { int nums_...原创 2018-07-12 22:43:08 · 367 阅读 · 0 评论 -
LeetCode-算法-移除元素
27.移除元素[题目]给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。[思路]不使用额外的空间,考虑用val_num记录等于val元素的个数。遍历数组的过程中,...原创 2018-07-25 12:39:21 · 166 阅读 · 0 评论 -
表达式树
表达式树表达式树是用来解决表达式的一种常用的工具,它将表达式建立成一个二叉树,而二叉树的中序遍历顺序刚好是表达式的运算顺序。[题目] 输入一个字符表达式,每个字符代表一个数字,输出运算结果。[代码]以下代码参考了刘汝佳《算法竞赛入门经典》。//表达式树声明struct exprtree{ char op; exprtree *left; exprtree *right;};...原创 2018-11-22 14:44:07 · 752 阅读 · 0 评论