• LeetCode——Valid Sudoku


    Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.

    The Sudoku board could be partially filled, where empty cells are filled with the character '.'.


    A partially filled sudoku which is valid.

    Note:
    A valid Sudoku board (partially filled) is not necessarily solvable. Only the filled cells need to be validated.

    原题链接:https://oj.leetcode.com/problems/valid-sudoku/

    依照数独的规则。一行、一列、对角线、9个小格中不出现同一个数字。

    import java.util.ArrayList;
    import java.util.List;
    
    
    public class ValidSudoku {
    	public boolean isValidSudoku(char[][] board) {
    		for(int i=0;i<9;i++){
    			List<Character> list = new ArrayList<Character>();
    			for(int j=0;j<9;j++)
    				list.add(board[i][j]);
    			if(!isValid(list))
    				return false;
    		}
    		for(int i=0;i<9;i++){
    			List<Character> list = new ArrayList<Character>();
    			for(int j=0;j<9;j++)
    				list.add(board[j][i]);
    			if(!isValid(list))
    				return false;
    		}
    		for(int i=0;i<3;i++){
    			for(int j=0;j<3;j++){
    				List<Character> list = new ArrayList<Character>();
    				for(int k=0;k<3;k++){
    					for(int l=0;l<3;l++){
    						list.add(board[i*3+k][j*3+l]);
    					}
    				}
    				if(!isValid(list))
    					return false;
    			}
    		}
    		return true;
    	}
    	private boolean isValid(List<Character> list){
    		for(Character ch : list){
    			if(ch != '.')
    				if(list.indexOf(ch) != list.lastIndexOf(ch))
    					return false;
    		}
    		return true;
    	}
    }
    


  • 相关阅读:
    jvm的方法栈在干什么
    时间段交集查询
    linux 设置静态ip配置
    elk 学习
    内网穿透 https:natapp.cn
    mysql当前时间,日期转换,日期格式化
    swaggerui api.docs
    linux java -jar 后台进程
    druid 数据源 sql控制台输出
    spring pointcut 表达式
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5055386.html
Copyright © 2020-2023  润新知