首先,什麼是等價關係:
等價關係是集合元素間的一種代數關係,用字母e來表示,對於乙個集合中的兩個元素,如果他們之間存在一種等價關係,那麼必須滿足以下性質:
1. 自反性,對於任意乙個元素x, 它與自己存在等價關係,即(x,x) 滿足e
2. 對稱性,如果(x,y) 滿足 e, 那麼 (y, x) 也屬於e
3. 傳遞性,如果(x,y) 滿足 e,(y,z)滿足e,那麼(x,z)也滿足e.
接下來,看下面乙個等價類的演算法:
假設有集合s: . 同時有兩個陣列a,b,他們的元素都來自集合s,且長度都是m, a,b 兩陣列用來確定集合s 中元素的等價關係,假定a[k] 與 b[k]是等價的,那麼s便會被劃分成幾個不相交的等價類子集,例如:
n = 7,m=4,
假定:a =
b =
於是s便會被劃分成3個不相交的等價類子集:
s1 =
s2 =
s3 =
給你乙個陣列s, 以及陣列a,b, 要求你計算出s被劃分的等價類子集。
一種方法是,用佇列,把等價的各個元素鏈結起來,那麼互相鏈結的類就是等價類。
另一種方法是利用等價類的傳遞性,如果a與b等價,b與c等價那麼a與c也等價。
**如下:
public class number
}public class equivalclass
for (int i = 0; i < a.length; i++)
}private void makeset(number a, number b)
public void printallequivalset()
}private void printequivalset(number number)
number.visited = true;
system.out.print("
system.out.println(" }");
}}
等價類劃分
等價類劃分,指的是一種典型的 重要的黑盒測試方法。其就是解決如何選擇適當的資料子集來代表整個資料集的問題,通過降低測試的數目去實現合理的覆蓋,以此來發現更多的軟體缺陷。概述等價類劃分法將程式所有可能的輸入資料 有效的和無效的 劃分成若干個等價類。然後從每個部分中選取具有代表性的資料當做測試用例進行合...
等價類劃分
等價類劃分的原則 1 例如 確定範圍情況下,確定乙個有效等價類,兩個無效等價類 乙個文字框輸入字元個數6 18位 乙個有效的等價類 範圍內個數 兩個無效 小於6,大於18 2 例如 必須如何,確定乙個有效等價類和乙個無效等價類 請輸入十一位的手機號 乙個有效的 11位有效 不是11,無效 3 在輸入...
等價類劃分
關於課上的例題自己的解析 editbox 1 to 6 english letters or numbers are allowed,press ok to terminate.可輸入1 6個英文本母或數字,之後按ok。uvalid equivalence class 合法等價類 length 1 ...