최 장 공통 서브 시퀀스 알고리즘 (LCS)
(2) 알고리즘 실현 은 에서 의 동적 계획 1 장 을 참고 하 는 것 이다.
public static void main(String args[])
{
String s1= "abcbdab";
String s2 = "bdcaba";
LCS.getLCSLength(s1, s2);
}
public static void getLCSLength(String str1, String str2)
{
char[] x = str1.toCharArray();
char[] y = str2.toCharArray();
int[][] c = new int[x.length+1][y.length+1];
for(int i=1; i<x.length+1; ++i)
for(int j=1; j<y.length+1; ++j)
{
if(x[i-1] == y[j-1])
c[i][j] = c[i-1][j-1]+1;
else if(c[i-1][j]>=c[i][j-1])
c[i][j] = c[i-1][j];
else
c[i][j] = c[i][j-1];
}
printLCS(c, x, y, x.length, y.length);
}
public static void printLCS(int[][] c, char[] x, char[] y, int i, int j)
{
if(i==0||j==0)
return;
if(x[i-1] == y[j-1])
{
printLCS(c, x, y, i-1, j-1);
System.out.println(x[i-1]);
}
else if(c[i-1][j] >= c[i][j-1])
printLCS(c, x, y, i-1, j);
else
printLCS(c, x, y, i, j-1);
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Docker를 사용한 React 및 .NET Core 6.0 샘플 프로젝트 - 1부이 기사에서는 Entity Framework Core Code First 접근 방식을 사용하는 ASP.NET Core 6.0 WEP API의 CRUD(만들기, 읽기, 업데이트 및 삭제) 작업에 대해 설명합니다. 웹 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.