![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
Mooner_guo
这个作者很懒,什么都没留下…
展开
-
ACM想法题
描述:中国科技大学OJ-1106矩阵乘以矩阵的逆 http://acm.hust.edu.cn/problem.php?cid=1106&pid=8 /* 题意:矩阵A为0,1矩阵,求矩阵B等于A乘以A的逆,然后求B有多少个1 思路:矩阵乘以矩阵的逆相当于A每行和所有的行相乘。所以,比较矩阵A每列对应有多少个相等的1, 循环A的行,看第i行的每列最大有多少个原创 2012-12-29 15:16:54 · 683 阅读 · 0 评论 -
堆排序
package com.algorithm.sort;import java.util.Scanner;/** * 堆排序 * 算法思路: * 一维数组除了能表示线性结构外,还能表示完全二叉树 * 选择排序的思想是,固定位置比较n-1次,获得数字,固定下一个位置,比较n-2次。。。 * 但是这样,后面的比较有重新比较,有的数字是比较过的。 * 而堆排序正是利用树形结构,对原创 2014-07-09 12:37:23 · 537 阅读 · 0 评论 -
判断一个数字是否为2的阶次方
如8,16,64,256都是2的阶次方。解析: 2的n次方,换成2进制,则首位都是1,后面都是若干个0。2^n-1则是若干个1。直接拿这个数字进行&与运算,得到的值总是0。例如8=1000 7=0111 2个数字进行&运算,得到的是0。那么我们就可以拿来判断了。即表达式为:if(d&(d-1) == 0){ return true;}else{return fa原创 2015-09-27 09:17:17 · 1608 阅读 · 0 评论 -
杭电2571 命运-DP问题
杭电2571 命运http://acm.hdu.edu.cn/showproblem.php?pid=2571/* 题意:从(1,1)点到(n,m)点,求最大命运值解法: DP问题,dp[i][j]表示(i,j)的最大命运值,从(1,1)到(n,m)一直算下去,dp[n][m]即为所求 状态转移方程 dp[i][j]=MAX(dp[i][j原创 2013-01-19 17:02:36 · 646 阅读 · 0 评论 -
杭电1505 City Game-DP问题
杭电1505 City Gamehttp://acm.hdu.edu.cn/showproblem.php?pid=1505/*题目大意: N*M矩阵,F为空,R不为空,求最大子矩阵的3*面积解题思路:求矩阵的高度h[i][j]=h[i-1][j]+1(op[i][j]='F')否则为h[i][j]=0.接下来就与1506求子矩阵的面积类似了。对每行h[i]做处理,原创 2013-01-19 14:50:12 · 795 阅读 · 0 评论 -
杭电OJ-1506 Largest Rectangle in a Histogram --DP问题
http://acm.hdu.edu.cn/showproblem.php?pid=1506题意: 求最大矩形面积,即给定每个小矩形的高度hight[i],要从左右两边求出hight[x]>=hight[i]&&hight[y]>=hight[i],要求出最大的ARE=[x,y]*hight[i]。DP问题。l[]和r[]表示从左或者从右开始可以扩展到的位置如原创 2013-01-01 19:07:50 · 598 阅读 · 0 评论