是class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = '__all__'
def to_representation(self, instance):
rep = super(UserSerializer, self).to_representation(instance)
rep['company_name'] = instance.company_name.name
return rep
还是O(n^6)
?
O(n!)
分析:
public boolean isScramble(String s1, String s2) {
return isScramble(s1, 0, s1.length(), s2, 0);
}
private static boolean isScramble(String s1, int begin1, int end1,
String s2, int begin2) {
final int length = end1 - begin1;
final int end2 = begin2 + length;
if (length == 1) return s1.charAt(begin1) == s2.charAt(begin2);
for (int i = 1; i < length; ++i)
if ((isScramble(s1, begin1, begin1 + i, s2, begin2) &&
isScramble(s1, begin1 + i, end1, s2, begin2 + i)
) ||
(isScramble(s1, begin1, begin1 + i, s2, end2 - i) &&
isScramble(s1, begin1 + i, end1, s2, begin2)))
return true;
return false;
}
答案 0 :(得分:-1)
尝试这样的事情:
private static int ord = 1;
public boolean isScramble(String s1, String s2) {
boolean b = isScramble(s1, 0, s1.length(), s2, 0);
System.out.println("The order is: " + [insert your classname here].ord);
return b;
}
private static boolean isScramble(String s1, int begin1, int end1, String s2, int begin2) {
ord++;
final int length = end1 - begin1;
然后使用递增的字符串大小(n)运行它,并记下ord如何随n增加。这将为您提供正确的O标记。基本上,您只需计算递归函数被调用的次数。