Leetcode 419. Battleships in a Board
2017-12-19 00:09
363 查看
原题链接:
思路:如果当前位置是’X’,并且他的左边和上边都不是’X’,就表示这是一个新的战舰。避免递归,并且只需遍历一遍,同时满足O(1)空间复杂度的解法(PS:然而只打败了3%的人,测试数据让我很无语。。。)
思路:如果当前位置是’X’,并且他的左边和上边都不是’X’,就表示这是一个新的战舰。避免递归,并且只需遍历一遍,同时满足O(1)空间复杂度的解法(PS:然而只打败了3%的人,测试数据让我很无语。。。)
class Solution { public int countBattleships(char[][] board) { if(board.length == 0 || board[0].length == 0){ return 0; } int ans = 0; if(board[0][0] == 'X'){ ans++; } for(int i = 1; i < board.length; i++){ if(board[i][0] == 'X' && board[i - 1][0] != 'X'){ ans++; } } for(int i = 1; i < board[0].length; i++){ if(board[0][i] == 'X' && board[0][i - 1] != 'X'){ ans++; } } for(int i = 1; i < board.length; i++){ for(int j = 1; j < board[0].length; j++){ if(board[i][j] == 'X' && board[i - 1][j] != 'X' && board[i][j - 1] != 'X'){ ans++; } } } return ans; } }
相关文章推荐
- 【LeetCode】 419. Battleships in a Board
- 419. [LeetCode]Battleships in a Board
- LeetCode: Battleships in a Board
- Leetcode: Battleships in a Board
- Leetcode 419 Battleships in a Board
- LeetCode题解:Battleships in a Board
- 【LeetCode】419. Battleships in a Board
- [LeetCode]419. Battleships in a Board
- Leetcode-419. Battleships in a Board
- LeetCode-Battleships in a Board
- LeetCode--419. Battleships in a Board
- leetcode_419. Battleships in a Board ? 待解决
- [LeetCode]419 Battleships in a Board(暴力,dfs)
- [LeetCode] 419-Battleships in a Board
- leetcode 419. Battleships in a Board
- [LeetCode]419. Battleships in a Board
- LeetCode-419. Battleships in a Board
- Leetcode434. Number of Segments in a String
- LeetCode[419] Battleships in a Board
- 【LeetCode】419. Battleships in a Board 解题报告(Python)