class Solution {
public int minPathSum(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 j=1 ; j<n ; j++){
dp[0][j] = dp[0][j-1] + grid[0][j];
}
for(int i=1 ; i<m ; i++){
for(int j=1 ; j<n ; j++){
dp[i][j] = Math.min(dp[i-1][j] , dp[i][j-1]) + grid[i][j];
}
}
return dp[m-1][n-1];
}
}
class Solution {
public int minPathSum(int[][] grid) {
for(int i=0 ; i<grid.length ; i++){
for(int j=0 ; j<grid[0].length ; j++){
if(i==0 && j==0) continue;
else if(i == 0) grid[0][j] = grid[0][j-1] + grid[i][j];
else if(j == 0) grid[i][0] = grid[i-1][0] + grid[i][j];
else grid[i][j] = Math.min(grid[i-1][j] , grid[i][j-1]) + grid[i][j];
}
}
return grid[grid.length-1][grid[0].length-1];
}
}
class Solution {
public int findKthLargest(int[] nums, int k) {
int len = nums.length;
int temp;
for(int i=0 ; i<len-1 ; i++){
for(int j=i+1 ; j<len ; j++){
if(nums[i]>nums[j]){
temp = nums[j];
nums[j] = nums[i];
nums[i] = temp;
}
}
}
return nums[len-k];
}
}
class Solution {
public int findKthLargest(int[] nums, int k) {
int len = nums.length;
int temp;
for(int i=0 ; i<len-1 ; i++){
for(int j=i+1 ; j<len ; j++){
if(nums[i]<nums[j]){
temp = nums[j];
nums[j] = nums[i];
nums[i] = temp;
}
}
}
return nums[k-1];
}
}