2013-12-12 4 views
0

소프트웨어 (os, 장치, 브라우저, 클라이언트)와의 호환성을 확인해야합니다. 일부 시스템 만 지원됩니다.유효한 조합을 확인하는 알고리즘

호환 시스템에는 4 개의 매개 변수 조합이 모두 있습니다. 일부 시스템에 대한 매개 변수가 주어지면 호환성 여부를 확인해야합니다.

가장 좋은 점은 다른 OS 값 0-9, 값이 100,200, .. 900 인 장치를 브라우저 1000,2000, ... 9000 및 클라이언트와 마찬가지로 할당 할 수 있다고 생각할 수 있습니다. 모든 유효한 추가 사항의 캐시를 유지하고 해당 캐시에서 지정된 시스템을 확인하십시오.

더 좋은 방법이 있습니까? 위의 방법은 내가 확장 성 문제가있을 수 있습니다. 유사한 알고리즘을 제안 해주세요.

+0

어떤 확장 성 문제가 있습니까? –

+0

os 수가 10 이상이되면 각각에 대한 값을 변경해야한다고 가정합니다. –

+1

글쎄, 각 명시 적 조합의 관점에서 화이트리스트를 표현하거나 규칙의 관점에서 표현할 수 있습니다. "호환성"* 선험적 *을 결정하는 알고리즘은 없습니다. –

답변

0

해시 테이블을 사용하십시오. 거의 모든 언어에는 파일에 직렬화하는 메소드가 내장되어 있습니다.

0

클래스 인스턴스를 나타내는 개체를 만든 다음 개체를 해시하고 해시를 작동하는 샘플의 해시와 비교할 수 있습니다. 이렇게하면 확장 성 문제가 해결됩니다.

1

일부 조합이 제대로 작동하는지 확인하려면 테스트해야합니다. 너무 많은 조합을 통해 각각을 확인할 수 없다는 것을 확인하는 경우, 잘못 될 가능성이있는 사항에 대해 가정하고 이러한 가정하에 가장 유용한 테스트를 제공하는 체계를 찾을 수 있습니다.

두 가지 선택만으로 버그를 항상 복제 할 수 있다고 가정하면 (예 : Windows + 장치는 브라우저와 클라이언트에 관계없이 항상 문제를 일으킴) 모든 조합을 테스트하지 않고 두 가지 선택 사항의 모든 조합을 테스트하기위한 체계를 찾을 수 있습니다 모든 것 - 참조하십시오 http://en.wikipedia.org/wiki/All-pairs_testing

관련 문제