排序
order by
内置的判定 if(条件,条件true的输出,条件false的输出)
修改:
uodate table set colume=.....
删除重复了某个属性的数据:
delete from
用另一个表和当前的表做比对。
1873. 计算特殊奖金
select * from(
select employee_id,
if(employee_id%2!=0 and left(name,1)!='M',salary,0) as bonus
from Employees
)t1 order by employee_id;
627. 变更性别
update Salary
set sex=if(sex='f','m','f');
196. 删除重复的电子邮箱
delete p from Person p,Person v
where p.id>v.id and p.email=v.email;
动态规划:
剑指 Offer 42. 连续子数组的最大和
class Solution {
public int maxSubArray(int[] nums) {
int n=nums.length;
int[] dp=new int[n];
dp[0]=nums[0];
int max=nums[0];
for(int i=1;i<n;i++){
dp[i]=Math.max(dp[i-1]+nums[i],nums[i]);
max=Math.max(max,dp[i]);
}
return max;
}
}
动态规划:很像之前笔试的题
剑指 Offer 47. 礼物的最大价值
java版本:
class Solution {
public int maxValue(int[][] grid) {
int m=grid.length,n=grid[0].length;
int[][] dp=new int[m][n];
dp[0][0]=grid[0][0];
for(int i=1;i<m;i++){
dp[i][0]=dp[i-1][0]+grid[i][0];
}
for(int i=1;i<n;i++){
dp[0][i]=dp[0][i-1]+grid[0][i];
}
for(int i=1;i<m;i++){
for(int j=1;j<n;j++){
dp[i][j]=Math.max(dp[i-1][j]+grid[i][j],dp[i][j-1]+grid[i][j]);
// System.out.println(dp[i][j]);
}
}
return dp[m-1][n-1];
}
}
网友评论