Welcome to Mility!

庄子之无用之用的观点

    序   好久没有写博客了。   今天偶然发现了一篇有趣的博文,原文来自于台大的学生社团,都是繁体字,好多都看不懂,还是用Google翻译的,下面贴上原文供大家欣赏,如若侵权,删除之。原文地址链接1  、  链接2  和链接3 一、前言:     庄子生活在一个战乱的时代,群雄竞起、弱肉强食的世界造成了许多的家破人亡、妻离子散;在一片硝烟四起、烽火连天的环境中,许多权臣卿相都没能逃过虎口,另有更多无辜的平民黔首遭到了无妄之灾……庄子身处在这样的一个环境中,其心境可想而知。 而庄子这样的一个思想家,必然有一些经世济民,匡正乱世的想法,可是大环境不能允许他以入世的角度去看待这个黄沙滚滚,杀伐声大作的一个时代。 然则,他采取的是出世的态度吗? 不是! 他是出世和入世的综合,你看他像出世,又像是入世,其实他既不是出世,也不是入世。 他自己曾说:「周将处乎才与不才之间,才与不才之间,似之而非也,故未免乎累。」(《山木篇》),因此他要「乘道德而浮游」。 所以后人看庄子,远望似是,逼取便非,不容易说明他的本真。 因为庄子已经把他的生命镕铸在无穷的宇宙之中,说他是宇宙中的任何一体都可以,鼠肝虫臂,鸡弹牛马,听从你便,你又如何去称说他呢? 你又如何去捕捉他的本真呢? 既不能言说,故无迹可循;既无法捉摸,故能免乎累,这就是庄子身处动荡不安时代自适的一种方法,他以寓言、重言、卮言述说人生的大道,又以语言的超越论去否定他的言说。 所以在知北游一章中,当庄子被问到「所谓道,恶乎在?」时,他以「无所不在」应答,然而「无所不在」究竟是个什么样的体会呢? 常人自然会问:「其而后可。」于是庄子用蝼蚁、稊稗、瓦甓、屎溺来说明。 然则这样就是道吗? 所以他用卑下的事物去否定、去超越,就是要人们跳脱语言的迷思,就是要人们把握道的本真,而非全由语言、文字上去追求、去探索。 毕竟,语言也有不能通达的时候。 二、本文: 1、... Read more »

旋转数组中的最小数字

题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 我们注意到旋转之后的数组实际上可以划分为两个排序的子数组。 注意:旋转数组中包含两递增排序的子数组,有阴影背景的是第二个子数组。(a)把P1指向数组的第一个数字,P2指向数组的最后一个数字。由于P1和P2中间的数字5大于P1指向的数字,中间的数字在第一个子数组中。下一步把P1指向中间的数字。(b)P1和P2中间的数字1小于P2指向的数字,中间的数字在第二个子数组中。下一步把P2指向中间的数字。(c)P1和P2指向两个相邻的数字,则P2指向的是数组中的最小数字。 int Min(int * numbers, int length){ if(numbers == NULL || length <= 0) throw new std::exception("Invalid parameters"); int index1 = 0; int index2 = length -1; int... Read more »

查找与排序算法详解

查找算法   查找主要有顺序查找、二分查找、哈希表查找和二叉排序树查找。 1.顺序查找 对于数组,按顺序比较给定的值,时间复杂度0(n),,以下是实现: public static int Linear_Search(int[] data, int key) { if (data == null || data.length <= 0) { return -1; } for (int i = 0;... Read more »