Tag: 比较

是浮点数==永远不错?

就在今天,我遇到了一个我们正在使用的第三方软件,在他们的示例代码中有这样的话: // defined in somewhere.h static const double BAR = 3.14; // code elsewhere.cpp void foo(double d) { if (d == BAR) … } 我意识到浮点和它们的表示法的问题,但它让我想知道是否有情况下float == float会好吗? 我不是在问什么时候能工作,而是在什么时候工作。 另外,像foo(BAR)这样的电话怎么样? 这将总是比较相等,因为他们都使用相同的static const BAR ?

Python时间比较

如何比较Python中的时间? 我看到date比较可以完成,也有“timedelta”,但我努力找出如何检查当前时间(从datetime.now())是否早于,相同或晚于指定的时间(例如上午8点),无论date如何。

我怎样才能测量两个string之间的相似性?

给定两个stringtext1和text2 public SOMEUSABLERETURNTYPE Compare(string text1, string text2) { // DO SOMETHING HERE TO COMPARE } 例子: 第一个string:StackOverflow 第二个string:StaqOverflow 回报率:相似度为91% 回报可以在%或类似的东西。 第一个string:简单的文本testing 第二个string:复杂的文本testing 返回:这些值可以被认为是相等的 有任何想法吗? 做这个的最好方式是什么?

如何检查一个string是否以C中的另一个string开头?

标准C库中是否有类似startsWith(str_a, str_b)东西? 它应该指向以空字节结尾的两个string,并告诉我第一个string是否也完全出现在第二个字符的开头。 例子: "abc", "abcdef" -> true "abcdef", "abc" -> false "abd", "abdcef" -> true "abc", "abc" -> true

Python设置()如何检查两个对象是否相等? 对象需要定义什么方法来自定义?

我需要在Python中创build一个“容器”对象或类,它保留了我也定义的其他对象的logging。 这个容器的一个要求是,如果两个物体被认为是相同的,则去除一个(任一个)。 我的第一个想法是使用一个set([])作为包含对象,来完成这个要求。 但是,该集不会删除两个相同的对象实例之一。 我必须定义什么来创build一个? 这里是Python代码。 class Item(object): def __init__(self, foo, bar): self.foo = foo self.bar = bar def __repr__(self): return "Item(%s, %s)" % (self.foo, self.bar) def __eq__(self, other): if isinstance(other, Item): return ((self.foo == other.foo) and (self.bar == other.bar)) else: return False def __ne__(self, other): return (not self.__eq__(other)) 翻译员 >>> set([Item(1,2), Item(1,2)]) set([Item(1, 2), […]

为什么与NaN不同,为什么浮点数无穷大?

为什么无限比较遵循适用于NaN的逻辑? 此代码打印出三次false : double a = Double.NaN; double b = Double.NaN; System.out.println(a == b); // false System.out.println(a < b); // false System.out.println(a > b); // false 但是,如果将Double.NaN更改为Double.POSITIVE_INFINITY ,则对于等于或小于比较,我会得到相等的结果: double a = Double.POSITIVE_INFINITY; double b = Double.POSITIVE_INFINITY; System.out.println(a == b); // true System.out.println(a < b); // false System.out.println(a > b); // false 这似乎很危险。 假设无限值是由溢出产生的,那么我认为在完美算术中,两个以infinities结尾的variables实际上是不相等的。

json和xml有什么区别

JSON和XML有什么区别?

检测树结构之间的差异

这更像是一个CS问题,但却是一个有趣的问题: 比方说,我们有2个树结构,或多或less相同的节点重组。 你会如何发现 任何 在某种意义上说是最小 操作顺序 MOVE(A, B) – 移动节点B下的节点A(整个子树) INSERT(N, B) – 在节点B下插入一个新节点N. DELETE (A) – 删除节点A(与整个子树) 将一棵树转换为另一棵树。 可能显然存在这样的转换不可能的情况,根本上是小孩B与小孩A之间的根B)。 在这种情况下,algorithm只会传递一个“ 不可能 ”的结果。 更壮观的版本是对networking的一种推广,即当我们假设一个节点可以在树中多次出现(实际上有多个“父母”),而周期是禁止的。 免责声明:这不是一个家庭作业,实际上它来自一个真正的商业问题,我发现它是相当有趣的,想知道如果有人可能知道一个解决scheme。

在列表中查找最旧/最旧的date时间对象

我有一个datetime对象的列表,我想find最老的或最年轻的一个。 其中一些date可能在未来。 from datetime import datetime datetime_list = [ datetime(2009, 10, 12, 10, 10), datetime(2010, 10, 12, 10, 10), datetime(2010, 10, 12, 10, 10), datetime(2011, 10, 12, 10, 10), #future datetime(2012, 10, 12, 10, 10), #future ] 最好的方法是什么? 我正在考虑比较datetime.now()的每一个。

MySQL将DATEstring与来自DATETIME字段的string进行比较

我有一个问题:是否可以通过比较一个DATEstring“2010-04-29”与存储为DATETIME(2010-04-29 10:00)的string从MySQL数据库中进行select? 我有一个dateselect器,筛选数据,我想通过这样的DATETIME字段查询表: SELECT * FROM `calendar` WHERE startTime = '2010-04-29'" …我想获得DATETIME值为“2010-04-29 10:00”的行。 有什么build议么? 谢谢。