博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
南柯一梦
阅读量:4976 次
发布时间:2019-06-12

本文共 2159 字,大约阅读时间需要 7 分钟。

一、栈和队列

1.设计一个有getMin功能的栈

定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。
import java.util.Stack;class Main {    Stack
dataStack = new Stack<>(); Stack
minStack = new Stack<>(); public static void main(String[] args) { Main stack = new Main(); stack.push(11); stack.push(2); stack.pop(); stack.push(70); stack.push(51); System.out.println(stack.getMin()); stack.push(4); stack.push(113); System.out.println(stack.getMin()); } public void push(int num) { if(minStack.isEmpty()) minStack.push(num); if(num > minStack.peek()) { minStack.push(minStack.peek()); } else { minStack.push(num); } dataStack.push(num); } public int pop() { if(dataStack.isEmpty()) { throw new RuntimeException("Your stack is empty."); } minStack.pop(); return dataStack.pop(); } public int getMin() { if(minStack.isEmpty()) { throw new RuntimeException("Your stack is empty."); } return minStack.peek(); }}

 

class Solution {    public int numIslands(char[][] grid) {                if(grid == null || grid.length <= 0 || grid[0].length <= 0){            return 0;        }        int ans = 0;        int n = grid.length;        int m = grid[0].length;        for(int i=0; i
=n || y>=m || mat[x][y] != '1') return; mat[x][y]='2'; dfs(mat,x+1,y,n,m); dfs(mat,x-1,y,n,m); dfs(mat,x,y+1,n,m); dfs(mat,x,y-1,n,m); }}
200. 岛屿的个数

 

class Solution {    public int maxAreaOfIsland(int[][] grid) {        if(grid==null || grid.length==0 || grid[0].length==0) return 0;        int n = grid.length;        int m =  grid[0].length;        int ans = 0;        for(int i=0; i
=n || y>=m || a[x][y] != 1) return 0; a[x][y] = 2; ans += dfs(a,x+1,y,n,m); ans += dfs(a,x-1,y,n,m); ans += dfs(a,x,y+1,n,m); ans += dfs(a,x,y-1,n,m); return ans; }}
695. 岛屿的最大面积

 

转载于:https://www.cnblogs.com/Roni-i/p/10582244.html

你可能感兴趣的文章
warning: the `gets' function is dangerous and should not be used.(转)
查看>>
进阶之路 - 000 目录
查看>>
asp.net实现 EXCEL数据导入到数据库功能
查看>>
Java之内部类
查看>>
NOIP201502扫雷游戏
查看>>
Unity编辑器扩展chapter1
查看>>
微信小程序 Image 图片实现宽度100%,高度自适应
查看>>
VNC Viewer
查看>>
我用windows live Writer 写个日志试试看
查看>>
线程安全日期格式化操作的几种方式
查看>>
解读ASP.NET 5 & MVC6系列(8):Session与Caching
查看>>
python - class类 (六) 三大特性 - 多态
查看>>
JAVA普通内部类的用法
查看>>
[luogu2052 NOI2011] 道路修建 (树形dp)
查看>>
Struts2验证框架的注意事项
查看>>
WisDom .net 工作流设计流程
查看>>
php symfony框架自动生成控制器
查看>>
中文词频统计与词云生成
查看>>
网站的优化与推广策略
查看>>
C++ Windows 获取CPU利用率【转】
查看>>