从集合大小的定义到数学结构
[ 作者:佚名 | 转贴自:网络 | 点击数:1476 | 更新时间:2006-5-5 | 文章录入:ltq ]

一、古怪的定义

“自然数和正偶数,哪一种数更多?”(正偶数是指能被2整除,大于零的自然数。本文中规定0不是自然数。)

“自然数和正偶数一样多,因为将n和2n对应就可以得到自然数到正偶数的一个一一对应。既然 每一个不同的自然数都对应而且只对应一个不同的正偶数,所以自然数和正偶数一样多。”许多朋友会这样说,这当然是对的;但是也有许多朋友会觉得奇怪,并非 所有的自然数都是正偶数,而所有的正偶数却都是自然数,它们怎么会一样多呢?特别是,自然数的个数应该是正偶数的两倍才对!

关于用一一对应的方法来判断两个集合之间的大小关系,已经有许多文章谈过了,我只在这里再简单地重复一遍:

给定两个集合A和B,

1)如果存在A到B的一个单射f:A→B(也就是说A和B的一个子集有一一对应),那么我们称A的“基数”(或“势”)不大于B的“基数”,简称A不大于B,或A中元素个数不多于B中元素;

2)如果存在A到B的一个一一对应f:A→B,那么我们称A和B的“基数”相同,简称A和B一样大,或A中元素个数和B中元素个数相同;

3)(施罗德-伯恩斯坦定理)如果A不大于B,且B不大于A,那么A和B一样大。

由这个定义可以得出一些推论:

1)任何一个无限集都至少和自然数集合一样大;

2)两个集合的并集同这两个集合中比较大的那个一样大,特别地,两个同样大小的集合的并集和它们本身一样大;

3)两个集合的积集同这两个集合中比较大的那个一样大。

但是这种判断集合大小的方法得出的结论,比如说上面所说的“自然数和正偶数一样多”,甚至于 “自然数和有理数一样多”,或者“一条直线上的点的个数和一个平面上的点的个数一样多”,总会让不熟悉集合论的人感到很别扭,一个集合的一部分怎么会和自 己一样大?欧几里得的第五公理说:“整体大于部分。”在《几何原本》中,公理的地位要高于公设,前者是“放之四海而皆准”的,而后者却只是几何(也就是当 时的数学)中的“不证自明”的命题。欧几里得也搞错了?数学家们为什么不按照符合大家直觉的方法来规定集合的大小?他们似乎喜欢故意发明出一些和常识相悖 的稀奇古怪的概念和方法,让人上当后自己却在暗地里窃窃偷笑别人的不高明。

这可就冤枉了数学家们,如果有既符合常识和直觉,又严格且有用的关于集合大小的定义,数学家 一定是非常乐意接受的。但是如果这种“常识”只是象爱因斯坦所言的,是“十八岁以前所积累的偏见”,那么就不适合于作为严格的数学定义了。我想首先讨论一 下数学家被迫采用一一对应的方式来比较集合大小的原因。

二、集合大小定义的几个基本要求

作为集合大小的定义,应该满足什么样的基本要求?我们当然要尽可能地使它符合一般的关于“大小”的常识和直觉,其中有许多是要比“整体大于部分”更加要紧的。

首先,一个集合的大小只应该取决于这个集合本身。我们知道一个集合可以用多种方法来构造和表示,比如说,

A={小于等于2的正整数}

B={1, 2}

C={x2-3x+2=0的根}

其实都是同一个集合,

D={n | n为自然数,且方程xn+yn=zn有xyz≠0的整数解}

又怎么样呢?1996年英国数学家怀尔斯证明了费尔马大定理,所以集合D和上面的集合A、B、C是同一个集合,它里面有两个元素1和2。我们记得,一个集合由它所含的元素唯一决定,所以它的大小也不能取决于它被表示的方法,或者被构造的途径,它只应该取决于它本身。

一个集合得和自己一样大,这个没有什么好说的;其次,如果集合A不小于(也就是说或者大于, 或者一样大)集合B,而集合B也不小于集合A,那么它们就必须是一样大的;第三,如果集合A不小于集合B,而集合B又不小于集合C,那么集合A就必须不小 于集合C。在数学上,我们称满足这三个条件的关系为“偏序关系”(注:严格地说,这个偏序关系并不定义在集合之间,而是定义在集合按“一样大”这个等价关 系定义出的等价类之间,关于偏序关系的严格定义的叙述和上面所说的也有区别,但这些问题在这里并不要紧,你如果看不懂这个注在讲什么也不要紧)。如果一个 关于集合大小的定义违反了上面所说的三条之一,这个定义的怪异程度一定会超过上面使用一一对应原则的定义!

举个例子,比如说我对某位科幻小说作家的喜爱程度就是一个偏序关系。如果我喜欢阿西莫夫胜于 喜欢凡尔纳,而喜欢凡尔纳又胜于喜欢克拉克,那在阿西莫夫和克拉克中,我一定更喜欢阿西莫夫。不过一个偏序关系并不要求任意两个对象都能相互比较。比如说 刘慈欣的水平当然不能和克拉克这样的世界级科幻大师比,但是“喜欢”是一种很个人的事情,作为一个中国人,我对中国的科幻创作更感兴趣──所以似乎不能说 我更喜欢克拉克,但也不能说我更喜欢刘慈欣,而且也不能说同样喜欢,因为喜欢的地方不一样──所以更确切地也许应该说,他们俩之间不能比较。但偏序关系中 存在这样的可能性,有一个对象可以和两个不能相互比较的对象中的每一个相比较,比方说我喜欢阿西莫夫胜过刘慈欣和克拉克中的任一个。

不过作为集合大小的定义,我们希望能够比较任意两个集合的大小。所以,对于任何给定的两个集合A和B,或者A比B大,或者B比A大,或者一样大,这三种情况必须有一种正确而且只能有一种正确。这样的偏序关系被称为“全序关系”。

最后,新的定义必须保持原来有限集合间的大小关系。有限集合间的大小关系是很清楚的,所谓的 “大”,也就是集合中的元素更多,有五个元素的集合要比有四个元素的集合大,在新的扩充了的集合定义中也必须如此。这个要求是理所当然的,否则我们没有理 由将新的定义作为老定义的扩充。

三、“整体大于部分”原则的困难和一一对应原则的优点

满足上面几条要求的定义,最简单的就是认为无限就只有一种,所有的无限集合都一样大,而它们 都大于有限集合。这其实是康托尔创立集合论以前数学家的看法,所以康托尔把无限分成许多类的革命性做法使得数学家们大吃了一惊。但是这样的定义未免太粗糙 了一点,只不过是把“无限集合比有限集合大”换了种方法说罢了,我们看不出这有什么用处。没有用的定义不要也罢──再说在这种定义中,自然数和正偶数也一 样多,因为所对应的集合都是无限集合。

如果我们在上面几条要求中,再加上“整体大于部分”这条要求会怎么样呢?

我们想像平面上有条射线,射线的一端是原点,然后在上面我们每隔一厘米画一个点,并在每个点 旁边标上1、2、3……等,这样就有无穷个点。那么这个点集和自然数集合比较大小的结果应该如何?按照我们前面的要求,任何两个集合都应该可以比较大小 的。我们很容易想像到,这其实是一条数轴的正半轴,上面的点就是代表自然数的那些点,所以这些点的个数应该和自然数的个数相同。而且,按照“整体大于部 分”的规定,那些标有10、20、30……的点的集合比所有点的集合要小。但是“一厘米”实在是非常人为的规定,如果我们一开始就每隔一分米画一个点,顺 着上面的思路,这些点的个数也该和自然数一样多,但是这恰好是按一厘米间隔画点时标有10、20、30……的点啊!那些点始终是一样的,所以它们的个数不 应该取决于在它们的旁边标记的是“1、2、3……”还是“10、20、30……”。

再举一个例子。假设我给你一个大口袋,里面有无限多个小口袋,上面按照自然数标了号1、2、 3……。在1号口袋中有1粒豆子,2号口袋中有2粒豆子,……依次类推。现在我当着你的面拿掉1号小口袋,那么剩下的小口袋数和原来的相比如何?如果按照 “整体大于部分”的观点,应该是少了,少一条。但是如果我当初就背着你拿掉1号口袋,然后从其他每个小口袋中取出一粒豆子,再把小口袋上的号码改掉,2改 成1,3改成2……,然后再把大口袋给你,你显然不会知道我做了手脚,因为这时大口袋里的东西和原来没有任何区别,所以小口袋的数量和原来一样多。这就和 “少一条”矛盾了,从小口袋里拿一粒豆子或者是涂改上面的标号不应该改变口袋的数量。大家明白我是打了一个比方,大口袋就是一个集合。按照上面的要求,集 合的大小只应该取决于集合本身,而不应该取决于集合的表示方法或构造方法,也就是得到集合的过程。你拿到了大口袋,也就是就应该知道里面小口袋的数量,而 不用知道我是否做过手脚。

这样的例子可以举很多。我们发现,如果坚持“整体大于部分”的话,固然可以使得某些集合和自 己的子集相比较时,比如比较自然数和正偶数的个数时,符合“直观”和“常识”。但是更多的非常直观的东西和常识却都会变成错误的。比如说,x'=x+1这 样一个数轴上的坐标平移,会将坐标上的点集{1,2,3……}变为{2,3,4……},一个坐标平移居然可以变动点集中元素的个数!“元素可以一一对应的 两个集合大小相同”这条原理的失效,会使得我们在比较两个元素很不相同的集合时无所适从:怎样不使用一一对应的方法来比较自然数和数轴上(0,1)区间中 点的个数?

在上面的两个例子中我们会有这样的感觉,对于无限集合来说,从部分中似乎可以“产生”出整体 来。比如射线上的每隔一厘米画一个点的例子,如果我们把不是10的倍数的点去掉,然后将平面“收缩”到原来尺度的十分之一,我们就重新得到了原来的那个点 集。在装豆子的口袋的例子中,只要从去掉1号口袋后剩下的那些袋子中拿去一粒豆子,我们就又得到了原来的那个大口袋。这暗示了无限集合的一个重要特点:从 某种意义上来说,它和自己的一部分相似。事实上,无限集合的一个定义就是“能和自己的一部分一一对应的集合”。所以在无限集合大小的比较中,违反了“整体 大于部分”的原则并不奇怪,因为这恰好就是无限集合的特征。

如果使用一一对应的比较方法,我们发现它满足所有第二节中提出的关于集合大小定义的要求。而 且除了“整体大于部分”这个我们已经解释过的不适用的原则外,不违反其他的直觉和常识。事实上用一一对应的方法来比较两个集合的大小,也是非常符合直观 的。如果有两盒火柴,我们想比较哪盒中的火柴数量更多,我们大可不必去数出每盒中火柴的数量,那样很容易出错。其实只要从不断地从两盒火柴中拿掉相同数量 的火柴,最后如果同时两盒都不剩下火柴,那么就说明数量一样多,否则就是还剩有火柴的那盒比较多。

而更重要的是,这样的定义非常有用。康托尔在提出他关于集合的基数理论后,非常简洁地证明了 “几乎所有实数都是超越数”,而那个时候数学家连一个超越数的实例都还没有找到!引起第三次数学革命的罗素悖论也是从基数理论中产生出来的。虽然集合的基 数理论现在已经为一般的数学系学生和许多数学爱好者所熟悉,数学家们还是能从中找到非常有趣和深奥的课题,比如说“超大集合理论”,这是关于一些基数大得 匪夷所思的集合的理论。我们知道对于任何一个集合A,它的幂集P(A)(也就是它所有子集构成的集合)一定比它本身大,所以我们可以构造一系列的集合A, P(A),P(P(A))……一个比一个大,所以没有最大的集合。而“超大集合理论”声称,存在一个集合B,比前面这一系列集合中的每个都要大!

所以说,使用一一对应原则来定义集合大小,是数学家迫不得已和最佳的选择。

四、直觉的合理性和数学结构

在文章的最前面我们提到过,从直觉上说来,自然数的个数应该是正偶数的两倍,这里难道没有一 点合理的因素在内吗?有时我们会听到数学家说:“几乎所有的自然数都不是素数。”如果按照一一对应的原则,素数和自然数是一样多的(第一个素数2对应1, 第二个素数3对应2,第三个素数5对应3,……第n个素数对应n,……),这不矛盾吗?

数学并不依赖于直觉,但是尊重直觉,直觉中常常包含着合理的因素。受过数学训练的人对数学的 直觉一般来说要比其他人更有合理性,数学大师能够用直觉把握住很深刻的数学理论,他们有时会说:“虽然我还没有一个严格证明,但是我知道它是对的。”数学 大师的直觉当然不是每个人都能模仿的,但是我们的确可以改变对一些数学物体的想像方法,来改善自己的直觉,使得它更有合理性。

当我们谈到集合的大小,这里所谈论的集合应该是没有附加的数学结构的。当所比较的集合都是自 然数的子集时,直觉往往会偷偷地把自然数的数学结构加在上面。什么是数学结构?让我们先从最一般的集合说起。当我们谈论集合时,我们只应该把它看做一个装 着元素的大袋子,里面的元素之间没有任何联系,比如说自然数集合,我们应该想像那是一个装了标了号的球(或者其他什么)的大袋子,球和球之间并没有什么联 系,10并不一定非得在100的前面出现,如果你把口袋使劲抖抖,里面的球有些翻上来有些被压到底下去,但这并不改变这个集合──这仍然是自然数集合。

所谓的结构,就是在元素间增加联系,使得它们不能随便乱动。建筑工地上搭的脚手架就是一种结 构,上面的钢管啊铁丝啊木板啊都不是随随便便堆在一起的,而是按照一定的方式联系在一起。修建完了一幢大楼后,工人们会把它们都拆下来再拿到另一个工地上 去安装使用,虽然构成脚手架的元素──钢管铁丝木板还是原来的那些,但是脚手架却完全是另一个了,变化了的其实是结构。

数学结构也一样。比如说上面我们讲的序关系,就是元素之间的一种联系。我们可以很方便地验证 自然数的大小满足我们前面所说的偏序关系的三个条件,而且每两个自然数之间都可以比较大小,所以在自然数集合上有一个全序关系,这个关系就给了自然数集合 一个结构,就叫序结构。你可以把拥有全序结构的自然数集合仍旧想像成上面那个装了球的袋子,只是这时候那些球已经被从小到大串成了一串,不能随便乱跑了。 平时我们想像自然数集合,可能会把它想成数轴上离原点越来越远的一串点,或者1、2、3、……这样从小到大的一列数,不知不觉地,我们已经把序结构想像进 去了。当我们感到“正偶数的个数应该是自然数个数的一半,因为每隔一个数就有一个是偶数”,我们是在想像那条串成一串的球,偶数球得老老实实地和奇数球一 个隔一个地串在一起,而不是杂乱无章放在袋里,后面这种情况是谈不上“每隔一个”的。

在考虑到自然数的序结构后,我们就可以给“自然数的个数是正偶数的个数的两倍”这种直觉一个 合理的解释了。考虑小于100的正偶数,一共有49个,所以占小于100的自然数的49/99,接近1/2;如果把“小于100”改成“小于1000”, 那么结果是499/999,更接近1/2了;把上面的100和1000换成越来越大的数字,我们会发现正偶数所占的比例会越来越接近1/2。这就提示我们 可以采用这样一种关于自然数的子集的大小的定义:如果A是自然数的一个子集,令p(n)为A中小于n的元素的个数,我们称lim n→∞p(n) /n(就是当n趋向无穷大时,p(n)/n的极限)为A相对于自然数集合的大小。在这个定义下,正偶数集合相对于自然数集合的大小就是1/2。按照这样的 定义,素数集合相对于自然数集合的大小是0,这也就是所谓的“几乎所有的自然数都不是素数”。用上面这个方法还可以比较两个自然数集合的子集的相对大小, 具体方法就由读者自己来思考了。

如果没有自然数序结构这个“背景”,我们就只能够使用一一对应的方法来讨论集合的基数,那种 “自然数的个数是正偶数的个数的两倍”的直觉只是一种错觉。比如说考虑下面平面图上,所有(2n,n)这样的点所组成的集合(其中n是自然数)。如果站在 x轴的角度来看,我们发现每隔一列就有一个点,而列数显然和自然数一样多,所以点数就该和正偶数一样多;如果站在y轴的角度来看,我们发现每行都有一个 点,而行数也和自然数一样多,所以点数就该和自然数一样多。按照集合基数的观点,自然数和正偶数一样多,上面这种情况完全不造成矛盾,但是“直觉”所给予 的一会儿“一样多”一会儿“两倍”的印象,就没有太大的意义了(最多得到“两倍的无穷大等于无穷大”这种我们按照一一对应原则早已熟知,而且解释得更好的 观点)。

除了序结构外,还有其他的数学结构。法国著名的布尔巴基学派就认为数学基于三种母结构:序结 构、代数结构和拓扑结构,各种数学结构可以混杂在一起得出不同的数学对象,比如说实数集上有比较大小的序结构,还有由算术运算(加和乘,减和除是它们的逆 运算)定义的代数结构,以及由极限理论(它规定了某些点必须在另一些点的“附近”)定义的拓扑结构。布尔巴基学派试图用结构主义的观点来统一数学,出版了 著名的《数学原理》。结构主义的观点大致来说,就是数学结构决定数学对象。两个分别定义在两个不同集合上的数学对象,如果它们的数学结构相同,那么即使集 合中的元素很不相同,它们其实也是同一个数学对象。在数学中我们有时会碰到“同构”这个词,就是指在某种一一映射下,两个数学对象的数学结构相同。

举一个简单的例子。中学里我们学过复数和它的几何表示法,知道每个复数都可以对应到直角坐标 平面上的一个点,而复数的加法和乘法也都有各自的几何意义。在这里,一个复数是a+bi这样的一对数,还是平面上的一个点(a,b)并不是关键,尽管一对 数和一个点是完全不同的两样东西,只要在实数对集合和平面点集上面由加法和乘法决定代数结构是相同的,它们都可称作是复数,是同一个数学对象。相反地,如 果我们在平面上定义另一种乘法为(a1, b1)*(a2, b2)=((a1*a2, b1*b2),那么尽管平面上的点仍旧是那些,但是因为在上面所定义的数学结构变了,于是就完全是两种不同的数学对象了。

象上面这样的例子中数学结构的相同当然很直观,而有一些此类问题则牵涉到极其深刻的数学理 论,比如说著名的庞加莱猜想(新千年的七大数学问题之一,价值百万美金:-))就是问,是否任意闭单连通3维流形都同胚于3维球,换句话说,是否给定了 “闭单连通”这个条件,在3维流形上就只能有一种拓扑结构,也就是3维球的拓扑结构?另外,证明两个原来似乎没有关系的数学对象的数学结构其实是相同的, 意义非常重大,这样的定理是连通两个数学领域的桥梁。这意味着这两个数学对象其实是同一种东西,对于其中一个数学对象成立的理论,可以立刻应用在另一个上 面;以往用来研究一种数学对象的方法,就可以被用来研究另一类数学对象。本文开头说到英国数学家怀尔斯证明了费尔马大定理,他证明的其实是更一般的“谷山 -志村猜想”。这个猜想就是此类意义重大的命题,它沟通了两个数学领域:椭圆曲线和模形式。它的证明被称为是“人类智慧的凯歌”。

最后举个搞笑的例子。网上有人发现了下面两张图片,左边是变形金刚的电影招贴,右边是蓝猫的广告,构成画面的元素不同,一个是机器人,一个是蓝猫和它的朋友,但是摆的“甫士”和画面结构却相同,也算是个不光彩的“同构”例子吧。

“一个平面上的点应该比一条直线上的点的个数多”这样的直觉也可以用附加的数学结构来解释合 理性。当我们想像直线或平面上的点时,我们不但想像了那些点集,同时也在想像着这些点集构成的直线和平面,于是它们就再不是那些集合中散乱的点了,它们的 排列非常有规律。换句话说,我们在点集上增加了决定直线和平面的数学结构。如果我们把直线和平面看作是实数域上的线性空间(关于线性空间的理论是线性代 数,所有理科的学生会在大学一年级学习),我们就遇见了一些数学结构:首先我们需要一个实数域,上面有一个域的代数结构,其次我们在直线和平面的点集上定 义了一个交换群的代数结构,最后在实数域和交换群上定义了称作“数乘”的代数结构,这个代数结构同域和交换群上的各种运算都兼容,这样我们最终得到了这个 被称为“实数域上的线性空间”的代数结构。上面这一串话也许有点复杂,但是中心思想就是上面所说的结构主义的思想:数学对象是由各种数学结构混杂在一起 (当然要合理地混杂在一起,上面所说的“兼容”就是这个意思)而得到的。一旦我们这样规定了线性空间的结构,我们就可以定义线性空间的维数,这时我们可以 说,两维的线性空间(平面)在这种意义下要比一维的线性空间(直线)大。

从上面两个例子我们看到,当集合中的元素只是被看做一个没有任何数学结构的集合中散乱的元素 时,我们只能用一一对应的方法来比较集合的大小;而当丰富多彩的数学结构被加在集合上时,我们才有可能用更精细和更符合直觉的手段来定义不同的比较(附加 有数学结构的)集合大小的方法。

转自《三思科学杂志》

转载于:https://www.cnblogs.com/jckchj/archive/2006/09/05/495250.html

从集合大小的定义到数学结构-解决了多年的疑惑相关推荐

  1. 错误:索引超出范围。必须为非负值并小于集合大小。参数名: index

    我在 DataGrid删除按纽下写如下代码: 运行后出现错误:索引超出范围.必须为非负值并小于集合大小.参数名: index . 问题出现在:没有设置DATAKEYFIELD设为数据库中的pro_id ...

  2. 解决:索引超出范围。必须为非负值并小于集合大小。

    asp.net 提交文件时提示如下错误!! 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System ...

  3. 不相交集的求并算法(按集合大小求并+按高度求并)

    [0]README 0.1)本文总结于 数据结构与算法分析, 但源代码均为原创,旨在实现 不相交集ADT的两个操作:合并集合union+查找集合find: 0.2) 不相交集ADT 的 Introdu ...

  4. zend studio中ctrl+鼠标左键无法转到类或函数定义文件的解决方法

    转载自:http://blog.csdn.net/wide288/article/details/21622183 zend studio中ctrl+鼠标左键无法转到类或函数定义文件的解决方法:  z ...

  5. 用迅雷下载的视频,文件夹打开是空的,文件夹有大小,也没有隐藏文件的解决办法

    用迅雷下载的视频,文件夹打开是空的,文件夹有大小,也没有隐藏文件的解决办法 如果有2个文件名一样的,删除其中那个是0大小的,则另一位文件夹就有东西了.

  6. oracle分页报未明确定义列,关于在join中出现ORA-00918: 未明确定义列的解决办法

    /*关于在join中出现ORA-00918: 未明确定义列的解决办法*/ /*关于join和where表连接问题,需要在使用join时需要使用列的别名,避免相同列名的出现.*/ --以下为简要测试过程 ...

  7. 对于集合set的定义

    集合set 对于集合set的定义 一,set集合中的HashSet 1.HashSet哈希表存储 2.HashSet是如何保证元素唯一性的 3.List与Set判断重复对象的区别 二,集合框架Tree ...

  8. 求差集(C语言)两个集合的差集定义如下:集合A、B的差集,由所有属于A但不属于B的元素构成。输入两个集合A、B,每个集合中元素都是自然数。求集合A、B的差集。

    [问题描述] 两个集合的差集定义如下: 集合A.B的差集,由所有属于A但不属于B的元素构成. 输入两个集合A.B,每个集合中元素都是自然数.求集合A.B的差集. [输入形式] 从标准输入先输入集合元素 ...

  9. hashset java 键值对_Java集合 - HashSet的定义以及用法

    HashSet的定义 HashSet类实现了Set接口,由一个实际上是HashMap实例的散列表​支持.不能保证该集合的迭代次序,这意味着该类不能保证元素随时间的不变顺序.这个类允许null元素.该类 ...

最新文章

  1. TENSORFLOW变量作用域(VARIABLE SCOPE)
  2. 【计算理论】可判定性 ( 可判定性总结 )
  3. rmi 反序列化漏洞_IDEA动态调试(二)——反序列化漏洞(Fastjson)
  4. 单词嵌入_单词嵌入与单词袋:推荐系统的奇怪案例
  5. undefined reference to `vtable for XX::XX'
  6. 前端学习(1976)vue之电商管理系统电商系统之解决attr_val为空
  7. supersocke接收不到数据_基于SuperSocket的北斗终端数据接收服务的设计与实现
  8. secureFX上传文件的时候报错,secureFX崩溃
  9. cnn训练出现的问题
  10. C++ 关于“堆对象和栈对象”
  11. [转载] Netty
  12. 【sublime】sublime添加浏览器预览快捷键
  13. !!破解灯塔线取点与画线的“难点”
  14. Xmind激活版双击文件无法打开的解决方案
  15. html自定义指针,如何自定义鼠标指针 怎样在wpf中自定义鼠标指针
  16. 宋体查询1.mysql数据库复习加强 2.mysql事务触发器 3.mysql 索引外键加强 4.zendstudio 的安装使用 5.svn版本控制器的使用-java教程...
  17. 【两周快速入门pr】熟稔常用操作,提高剪辑效率
  18. 保护眼睛的屏幕设置 Win2008R2中的Win7桌面效果设置
  19. 计算机软考科目众多 我们该如何选择考试科目?
  20. Berzerk CodeForces - 787C (BFS)题解

热门文章

  1. 学习Linux编程前的准备
  2. 兰州理工大学linux试题,兰州理工大学学期《电子技术》试题.doc
  3. python场景识别_python 场景
  4. Myeclipse学习总结(17)——Java主流IDE优缺点分析
  5. 你不知道的《阿里巴巴Java开发手册》背后故事
  6. python 不定参数_人生苦短,我学不会Python。——函数中不定长参数的写法
  7. Blockathon记录——by 参赛者 张翔
  8. Python的元组()与字典 { }
  9. golang 函数一 (定义、参数、返回值)
  10. OpenGL ES着色器语言之变量和数据类型(二)(官方文档第四章)