886 Possible Bipartition
886. Possible Bipartition
1. Question
Given a set ofN
people (numbered1, 2, ..., N
), we would like to split everyone into two groups ofanysize.
Each person may dislike some other people, and they should not go into the same group.
Formally, ifdislikes[i] = [a, b]
, it means it is not allowed to put the people numbereda
andb
into the same group.
Returntrue
if and only if it is possible to split everyone into two groups in this way.
Example 1:
Example 2:
Example 3:
Note:
1 <= N <= 2000
0 <= dislikes.length <= 10000
1 <= dislikes[i][j] <= N
dislikes[i][0] < dislikes[i][1]
There does not exist
i != j
for whichdislikes[i] == dislikes[j]
.
2. Implementation
思路: 用BFS对图进行染色,如果相邻的点是不同颜色,则可以分成二分图
3. Time & Space Complexity
时间复杂度O(n), 空间复杂度O(n)
Last updated
Was this helpful?