Регистрация | Вход
function MAIN classterCounter=1; for x in XRange do for y in YRange do if point[x][y] then otherClassters = otherClasstersOfNeighbors(x,y) if otherClassters is empty then classter = classterCounter = classterCounter + 1 setToClasster(classter,x,y) else classter = min(otherClassters) setToClasster(classter,x,y) for otherClasster in otherClassters do mergeClassters(classter,otherClasster) done end_if end_if done done renumberingOfClassters()donefunction otherClasstersOfNeighbors(x,y) return Array( classterOf(x-1,y), classterOf(x,y-1) )endfunction mergeClassters(classterA,classterB) // зависит от структиры данныхendfunction setToClasster(classter,x,y) // зависит от структуры данныхendfunction classterOf(x,y) // зависит от структуры данныхendfunction renumberingOfClassters() // зависит от структуры данныхend