public boolean existII(char[][] board, String word) {
		if (board == null || board.length == 0 || word.length() > board.length * board[0].length)
			return false;
		char c = word.charAt(0);
		for (int i = 0; i < board.length; i++) {
			for (int j = 0; j < board[i].length; j++) {
				if (c == board[i][j]) {
					boolean[][] visited = new boolean[board.length][board[0].length];
					if (exist(board, word, 0, visited, i, j))
						return true;
				}
			}
		}
		return false;
	}