lol的排位机制目前看来 就是你不能把把C那么上分就看运气啊 xdm你们觉得呢

作者 | 程序员内点事

昨天中午在食堂和部门的技术大牛们坐在一桌吃饭,作为一个卑微技术渣仔默默的吃着饭听大佬们高谈阔论,研究各种高端技术我TM也想说话可实茬插不上嘴。

聊着聊着突然说到他上午面试了一个工作6年的程序员表情挺复杂,他说:我看他简历写着熟悉SQL语句调优就问了下 Explain 执行计劃怎么看?结果这老哥一问三不知工作6年这么基础的东西都不了解!

感受到了大佬的王之鄙视,回到工位我就开始默默写这个哎~  我TM也鈈太懂 Explain ,老哥你这是针对我啊!哭唧唧~

会显示来自优化器关于SQL执行的信息也就是说,MySQL解释了它将如何处理该语句包括如何连接表以及什么顺序连接表等。

  • 可能用到哪些索引哪些索引又被实际使用

  • 一个表中有多少行被优化器查询 .....

Explain 执行计划包含字段信息如下:分别是 12个字段。下边我们会结合具体的SQL示例详细的解读每个字段以及每个字段中不同参数的含义,以下所有示例数据库版本为

上边只是简单介绍了丅 Explain 执行计划各个列的含义了解它不仅仅是要应付面试,在实际开发中也经常会用到比如对慢SQL进行分析,如果连执行计划结果都不会看那还谈什么SQL优化呢?


关注公众号发送”进群“磊哥拉你进读者群。

本期嘉宾介绍:崔新涛冠通期貨资管部副总,负责公司主动管理业务条线金融衍生品专业毕业;曾任职世界500强企业自营投资经理;年间作为创始合伙人创办了两家证券类私募基金;9年投资经验,6年基金管理经验从一名以技术分析为主的趋势交易员,经历了世界500强企业自营投资的历练、经历了两次私募基金创业的失败从失败中汲取教训,从反思中提高自己最终成为一名涉及证券、债券、商品、货币等大类资产投资的宏观对冲基金經理。

作为资深宏观对冲基金经理他对宏观对冲策略有何见解?相比其他投资策略宏观对冲策略的优势是什么?宏观策略之间有哪些差异对于投资者而言,未来哪些投资机会值得关注对此,东方财富网邀请到了冠通期货资管部副总崔新涛先生做客《财富观察》栏目与大家分享观点。

崔新涛在接受采访时表示其倾向于选择宏观对冲策略的原因有两个:一是经济波动是确定性的,经济波动确定性导致的在经济波动之下各类资产的组合盈利也是确定性的,这种确定性是单一策略所不具备的;二是长期来看宏观策略的收益风险比相對来说较高。

投资方向上崔新涛认为未来房地产的收益率会下降,同时证券、债券权益资产的吸引力将提高因此倾向于建议大家增配┅些二级市场权益类的产品。

主持人:朋友们大家好欢迎收看今天的《财富观察》,我是主持人颜飞今天我们请到的崔总给大家继续鼡他的视角观察一下当下的市场。崔总你好

崔新涛:你好,主持人好

主持人:先通过一个短片来认识一下今天的嘉宾。欢迎回来接丅来我们先让崔总讲一讲自己的经历,跟大家分享一下

崔新涛:我整个投资经历时间其实并不是特别长,大概不到10年时间分为四段。苐一段是2010年本科毕业以后进入光大期货上海总部当时是股指期货上市,公司对这块业务推进比较积极我是作为北京和天津地区的项目經理,和一些大型的资管机构对接包括公募基金、券商资管、险资这一块。那个阶段虽然在期货行业相当于为后来从事资管业务埋下┅个伏笔,这是第一个阶段

第二个阶段是2012年到2014年年底,这个阶段是在一家世界500强做自营投资当时部门投资负责人也相当于我的投资领蕗人,在这个时间段我们建立了整个投资框架当时也涉及到了不同的资产,像证券、债券包括衍生品的资产。这是第二个阶段

对于峩来讲,投资能力增长最快是在第三个阶段2015年到2019年,在五年时间我相当于在连续创业在证券私募领域,我觉得主要从两个方面提升朂直接是我们团队投资能力的提升,做投资的朋友应该会知道2015年的时候我们经历了股灾,2016年整个市场融断包括双十一大宗商品大幅波動,2017年的时候我们经历了19行情整个证券市场,包括整个商品市场CTA大面积的亏损从一个投资经理角度出发,当我们的策略和市场不匹配嘚时候我们可以允许一类策略长期不盈利。但对于创业公司来讲是不行的所以那个阶段我们必须大量地拓充自己的知识,不断地尝试噺的策略像CTA的量化策略、股票基本面策略,当时也发了几只产品其实业绩也还不错,后来又开始尝试FOF和MOM的委外策略也就是说在这个階段对于团队整个投资能力提升,对投资策略和资产理解有大幅度的增长这是最直接的。间接来看我觉得是两方面,一方面是我们发現问题、解决问题反馈速度这种能力会有个提升;第二个从投资经理的角度来讲,我可能做一些决策只会影响我基金中短期的业绩但莋为一个公司的管理人,当我做一些决策的时候往往会影响一个公司的生死存亡尤其是对于家底比较薄的创业公司尤其这样。所以那段時间面临的压力远远大于作为投资经理面对市场波动的压力所以对于抗压能力其实有很大提升,这是我的第三段经历

第四段经历是从2019姩9月份以后到现在,这个阶段相当于经历很多事情之后我对自己重新进行定位,把自己身份重新回到投资经理身份之上辞掉了原来公司的职位,退出原来公司经营入职了现在的这家公司,负责整个主动业务管理条线重点往宏观对冲的这个策略方向发展。

主持人:说箌宏观对冲接下来就讲一讲,在这方面您个人的一些见解

崔新涛:好,宏观对冲其实市场上有很多说法我的理解是,我觉得要拆分荿两个方面第一个我们从宏观资产选择的层面来看,这类策略会通过各种组合的方式把资金配置在证券、债券、商品和货币类资产上媔,而这些资产往往跟经济的波动是有直接关联的这是在资产选择层面。在风险的对冲层面要从一个中长期的维度来看,中长期的维喥刚才我们讲过这些资产跟经济波动是有关的,所以它们的优化组合往往能对冲掉市场经济波动的一些风险

第二个,短期来讲往往┅些突发事件会对一类资产产生重大的影响,可以利用一些金融衍生品类似于期权、期货,包括一些避险资产类似于黄金、国债,来對冲掉这类资产本身在短期内的一个冲击性的风险

主持人:好,那我们说到风险不管是机构投资者还是普通投资者,其实对于风险都昰深恶痛绝想象办法把这个风险对冲掉,看看崔总您怎么看

崔新涛:对,我们讲一下宏观对冲基金从风险层面怎么做对冲的还是一個长期的维度。我们知道经济的增长和通货膨胀会带来资产价值的上升,经济的衰退往往会带来资产价格的下跌但是这三个宏观因子,经济增长、经济衰退、通货膨胀是不能直接做投资的所以我们一定要找到在宏观因子之下对应资产,比如说经济增长的时候往往证券类资产表现会比较好,通货膨胀的时候往往商品类资产表现比较好衰退的时候债券类资产表现比较好,所以这三类资产的组合往往能够对冲掉经济长期波动的风险,最有名的例子就是达里奥的桥水基金风险平价基金,这是从长期的维度

短期维度来说,我们往往会經历一些很短期的市场冲击这个时候,整个证券资产的表现是非常差的但这个时候我们可以利用期货,股指期货包括期权,包括增歭债券、增持黄金对冲一部分权益类资产的损失。这是从长期维度的风险对冲和中短期维度的风险对冲做这么一个组合

主持人:好,那接下来我们再来讲一讲关于宏观大家总觉得它的思考需要参考一些因子会更庞杂、更复杂,所以大家就觉得那这个宏观策略是不是偠有更多的方法论和论证去看待它呢?

崔新涛:对是的,是这样的我觉得我们切一下PPT吧,然后我们看一下这个内容

我们可以看一下這是宏观对冲基金的结构,基本上分了四层第一层是宏观基金,第二层是各类资产第三类是策略,第四类是各种工具我们从下往上來推导,首先宏观对冲基金运用的工具非常非常的多基本上我们听过所有的工具它都会用到,既有单个的股票也有商品期货,像债券裏面的信用债、利率债、各种债都会用到包括外汇、期货、期权,甚至它会采用一些委外的方式投资于基金以FOF和MOM的形式,这是工具茬工具层面,会衍生出策略策略会把这些工具做一些优化的组合,其实我们知道我们能够熟练的使用一些工具已经是很困难了然后我們能在一种策略之内长期稳定的盈利也比较困难。但在策略层面之上呢我们还是需要不同的资产类别的组合,这里面甚至会涉及到宏观資产宏观环境的一些预测,宏观环境的一些判断才能把这个资产做一个有效的组合,所以相对来讲整个的策略难度还是比较高的,對团队要求还是比较高的

主持人:那我们看到这个其实还是蛮深奥复杂的,那我们就想问一下为什么会如此选择这样一个方法

崔新涛:我觉得先说一下我们为什么能做这个策略吧,我们做这个策略并不是主动选择的结果而是市场倒推的结果。我们相当于也是从一个单筞略出身为什么会逐渐衍生出这些策略呢?是因为中间刚才讲到主要是创业的那段经历等于市场必须倒逼着我们快速的掌握不同的资產、掌握不同的策略、掌握不同的工具。当工具多的时候我们自然会想如何用一类策略把这些工具统一起来,也就是说我们会从策略层媔看待这些工具当策略多的时候会从资产层面看待,当资产比较多的时候一定会跳出来从资产组合层面来看这是一个倒逼的过程,而鈈是主动选择的过程

而到后来,我们对整个市场认知到一定程度之后其实我们倾向于选择这类策略,为什么选择呢源于两个,第一個刚才我们讲过经济波动是确定性的,经济波动确定性导致的在经济波动之下这些各类资产的组合盈利也是确定性的,这种确定性是單一策略所不具备的或者单一资产是不具备的,这是一个第二个,如果从一个比较长的维度来看确实宏观策略的收益风险比是相对來说比较高的,有一个第三方网站做过一个业绩统计从2013年到2020年,长达7、8年的时间宏观对冲策略的年化收益率大概21%,是远远跑赢其他所囿的策略的

主持人:那我们想,这样一个操作需要一个团队还是你们是怎样进行操作的,给大家介绍一下

崔新涛:对,肯定是需要┅个团队我们团队主要从几个层面,首先我们肯定有研究层面研究层面的话,我们首先有自己的研究框架这是肯定的,其次对于一些宏观的视角包括一些资产方向的选择,我们更多的是用这种券商包括公募基金的研究报告,这是一个第二个我们自己有一个小的圈子,这个小的圈子大家很多年的朋友这些人都是在券商呀,包括公募基金本身都是投资经理,是不同策略比如公募基金的债券基金经理,比如私募的股票基金经理我们自己会经常有一个月度的沟通,沟通机制对,这是一个研究的方面对资产观点。

对于策略方媔是我们团队自己在做,我们有两位投资经理第一位是我,我主要负责资产和策略层面的组合另外一位投资经理是侧重策略的研发囷执行,我们两个人大概有七年的合作经验七年一直在一起,一起经历很多事情所以这种契合度相对来讲是比较高的,当然我们也希朢随着我们慢慢规模的增大业绩越来越好,能够跟更多的优秀投资经理一块合作优化整个的投资框架。

主持人:那我们策略你们都昰自己进行操作吗?

崔新涛:也不全是因为刚才讲了策略还是相对来讲比较复杂,我们所有资产配置里面60%的资金是委外的方式主要是股票多头和债券多头,另外40%的资金是我们自己来操作主要是期货和期权的衍生品上面,当然统一100%资产的风控是我们统一来做的这是委外的这块方面。

但我觉得这方面我们相对来讲还是有一些优势优势在哪儿呢?就是经历这么多我们知道自己哪些能做,哪些不能做峩们也知道哪些人会做的比我们好,所以我们也不是一味的说所有东西都要主动管理其实并不是这样。

主持人:说到这儿我们来听一聽你们这边关于委外的标准是哪样的?

崔新涛:委外的话其实我们主要是四个标准,当然我先说一下之前阶段在最开始做FOF和MOM的时候,標准当然很多包括定性的、定量的,很多很多不同的维度但慢慢做的时间久了之后,浓缩出四个标准这四个标准我简单给大家说一丅,就是我们会倾向于从基金经理的角度去选择这个基金经理必须经历多轮牛熊市,第二个这个基金经理管理过大资金第三这个基金經理要有一定的行业美誉度,第四这个基金经理必须在一些行业排名前三分之一的平台工作为什么这么选呢?它其实有一个内在的逻辑这个逻辑是什么呢?如果经历过多轮牛熊市的投资经理本身现在管理大资金,说明他业绩还不错否则不会得到市场认可,这是第一個第二个他经历很多波折,他会对市场有敬畏之心这个事情非常非常重要。第三个问题他有行业美誉度我作为一个投资经理其实很哆时候我从自己倒推,对于好的投资经理来讲他会把他的声誉看的比资金、比收入或者说比生命都很重要,真的是这样的就是对一个荇业热爱到一定程度。所以说他会有一定行业美誉度可以避免类似风格漂移啊,做一些出格的事件可以把这些东西避免掉。还有一个仳较重要的是我们为什么要求他必须在一些中大型的机构工作呢我们希望这个公司能够给投资经理提供比较好的环境,让他安心的做一些投研工作而不是说把主要的工作放在比如融资呀,或者其他的方面这样的话其实充分发挥投资经理的长处,这是一个内在的逻辑

主持人:好,那我们也想知道崔总在选择产品的时候又是如何看待的

崔新涛:大家经常会区分,比如说这是公募产品这是私募产品,信托、债券其实我们不从这个角度拆分,它只是一个产品结构我们要看背后的策略,我们因为主要投的是公募的多头和债券的多头策畧这类策略我们主要是投这种偏公募类型的产品,至于说它是信托还是说券商资管这事本身不是特别重要它一定是公募类型的产品,為什么呢因为公募基金已经有20多年的发展历史,它在这两类策略上面积累大量的经验以及大量的教训而且我们知道公募的数据,公布吔好、年报也好信息透明度是比较高的,所以这一类策略主要是选择公募类型的产品但是有另外一类策略,比如公募做不了的比如CTA,比如类似中高频的市场中性的策略那可能会选择一些私募类型的产品,因为监管的规定导致公募在这一块并不是特别擅长所以我觉嘚主要还是从策略来分。

主持人:同样我们也想知道宏观策略之间他们差异化是怎样有很大吗?

崔新涛:对我们还是切一下PPT。

主持人:好我们一起来看一下。

崔新涛:我们看一下宏观策略的基金差异主要在什么地方海外做过一个研究报告,基金之间的差异70%来自于资產组合20%来自于个券选择,10% 来自于择时这是一个组合差异的来源。

我们具体看一下案例我说一下,因为是私募类型的产品是不能公开宣传的我取了不同的几家公司的产品,而且我把名字全部隐去了只是作为一个案例这里要跟大家说明一下。大家可以看一下

这是两個非常优秀的宏观对冲基金近三年的业绩,左边的基金这三年累计收益率是接近55%我们可以用60%吧,右边这个也差不多长期业绩差不多,泹是我们发现短期业绩差别非常非常大这个基金相当于稳步每年上涨的态势,就是每年15%到20%左边那个基金。右边那个基金长达两年时间非但没有盈利反而亏损的,亏损25%但是2020年3月这个尾部的风险直接让他收益率短时间之内飙升到了60%,也就是取得80%左右的收益率这区别在於哪儿呢?就在于他们资产配置的方式很明显左边这个基金是采取先做组合,先分散先做组合先在策略和资产层面做组合,再根据特萣机会去优化的方式投资右边这个是集中到某一个特定的领域,集中优势来进行投资所以这个组合层面是完全不一样的。但是你说哪┅个更好哪一个更差,这个没有可比行因为两个都是百亿级别的基金,而且均斩获了各类的大奖包括亚洲宏观基金大奖,两个都有这是在组合层面的差异。我们看一下如果大家都采取先分散再集中的方式有没有差异?也有差异这是另外两个宏观对冲基金

,我们看一下左边这个近半年收益率10%右边这个稍微高一些,但在短期节奏上是有区别的比如2月3号这一段,这个就是明显是证券清仓把仓位铨部清掉的,这明显用一些对冲的手段包括整个市场3月份跌下来反弹的阶段,这明显底部加仓的这个明显就可能是减了一些仓位,所鉯我们还是回到这张图上来讲它主要的差异来源于资产组合、个券选择和择时,实际上绝对的差异来自于资产和策略组合方式所以他們差异非常非常大。

主持人:那这种差异我们该如何看待然后崔总您的团队又是如何去做的呢?

崔新涛:我们先看还是切一下PPT看这一個。

首先我们看一下资产配置的不同方法其实主要在于着眼点不同,前面着眼点不同有的着眼于风险,有的着眼于收益有的着眼于兩者的结合,还的着眼于投资目标但是我们发现,其实每种方法后面都有大型的机构在实践比如说我们常听到的最简单60%的股票+40%的债券,就是上百年之前就开使用的方法对不对?但实际上挪威主权基金作为全球最大的主权财富基金有上万亿美元的体量,他仍然在用这樣的方式那为什么呢?我们还是回到机构追求是收益的必然性什么是收益必然,就是经济波动是收益的必然经济来讲,长期经济的增长和幅度这个增长幅度和时间一定是要多与经济衰退的幅度和时间的,这是肯定的这种情况下,我用更多的资产配置在股票上面仳较少的资产配置在证券上面,其实可以优化我整个资产组合的波动这是一个,另外的话这种组合相对来讲成本比较低,你看大多数采用ETF基金也好海外比较大盘的基金也好,成本比较低简单就意味着可控性比较强,所以全球最大主权基金是采用六四的方法类似于橋水是比较复杂的方法,包括用量化的手段包括杠杆本身。

所以我们并不觉得哪种方法会更好、更差这取决于两部分,第一个如果从投资人的角度你要看你追求的是哪种方法哪种方法更适合你,这是第一个如果从投资经理的角度来看的话,还是你本身能力在那儿這件事情很重要,对于我们来讲我们更多采取以风险赋权包括结合经济周期的方法我们先分散,当一些特定的我们能看得懂的机会出现嘚时候做一些集中的优化,对主要是这种看法。

主持人:那我们再去看一看未来如果说把目光放到未来的话,投资难度啊以及未來的看法你是怎么看的?

崔新涛:我先说一下难度吧我们认为未来投资难度一定是增大的,这里面有一个很宏观的背景这个宏观背景茬什么呢?就是二战以后整个全球经济其实是一个稳步快速发展的阶段,这里有生产力的推进第三次工业革命,包括有一些全球化这樣一个进程导致的整个经济其实稳步上涨的状态,但是也积累很多的问题最突出的问题在哪儿呢?各国的宏观杠杆率都非常高我们鈳以简单理解为各国的负债都非常高,大家想一下解决负债的方法是什么要么我经济在高速增长阶段可以通过经济增速把负债降下来,這是一个方法

第二种方法,如果经济从一个高速往低速增长的话必定要通过去杠杆,就是去债务的方法所以未来我们会面临很多的問题,问题在哪儿呢现在整个技术革命对于整个生产力要素的推进从而带动经济发展的力度、边界效应越来越小,递减效应越来越大除非有类似前三次工业革命翻天覆地的改变,所以经济的增长速度势必会越来越缓但是你债务现在总量又那么大,你又开始借新还旧包括现在全球的央行放水,美国无底线的QE未来我们可能面对什么呢?就是债务的崩塌各国经济增速的放缓,这个东西其实对于未来不確定性是非常非常大的

崔新涛:这样的话类似前30年我们闭着眼买入美股的ETF躺赢的盈利模式可能会发生很大的转变,这只是从投资难度上來讲不涉及到具体的方向。

主持人:我们在方向上您看再能给大家分享一下吗

崔新涛:方向上我这么看的,就是央行近期发布了一个報告整个国内居民70%的财富是集中在房地产上面,就明显这个比例是很高的但是我们一定要去看待为什么形成这个比例,这个比例的形荿其实是有必然性的因为在所有的国家,在初级的发展阶段都要经历积弱积贫开始大量的基础设施建设包括房地产建设这个阶段,这個阶段整个的经济贡献就是由基础设施建设、城镇化包括重工业推动这时候你房地产收益包括利率的收益肯定是高的,这个全球所有的國家都一样我们可以看一下美国、德国包括日韩、台湾都经历过这么一个过程,在这个阶段

但当经济从一个高速增长到中低速增长的時候,其实整个的收益回报的资产会发生转变就这个时候首先房地产收益会下降,因为它本身体量已经非常大了你指望再有这么高的增长是不现实的。第二个问题就是整个的利率价格会下降,为什么呢因为利率代表什么?是资金的价格经济增长快的时候资金价格昰比较高的,经济往下走的时候它承载不了那么高的资金价格,所以利率价格会下降利率价格下降的话,其实会有利于权益类资产類似于证券、债券的表现。

所以我们看一方面整个房地产的收益率会下降,我们需要寻找更多的资产去替代另一方面证券、债券权益資产的吸引力会提高,因为它本身的价值也会提高所以我们还是倾向于大家可以增配一些二级市场权益类的产品,逐渐有一个转移的过程

主持人:那如果咱们把视角缩小到咱们普通投资者,有什么好的建议吗

崔新涛:我觉得普通投资者是这样的,第一个大家尽量不要猜测短期的涨跌因为这种判断确实难度非常非常大。那我们从配置的角度来讲给大家两个建议。

第一个建议我们可以找一些比较优秀的管理人协助我们搭理我们的资产,但这里面有一个前提什么前提呢?我们首先要对自己有一个充分的认知我们自己需要什么样的訴求,因为只有我们自己知道自己最熟悉自己本身的诉求,我们可以从四个方面考虑就是我可以投资的规模。第二个我投资多长时間,它是流动性的问题第三个我愿意承受什么样的波动,第四个问题就是我愿意、我希望获得什么样的回报从这四个方面结合我们自巳的一些真实的需求,找一些好的投资经理帮我们去匹配这样的资产组合我觉得这是一个方式。

另外其实可以给大家推荐另外一种方式我们个人可以通过一些简单的方法构建一个宏观基金的组合,这个方法是这样的我们刚刚讲过,证券、债券、大宗商品这种组合可以穿越整个经济周期我们在这三类资产下面选取更优化的一些投资标的,像证券我们可以选取消费ETF大家对于消费股很难选,包括说茅台現在10万块钱一手买不了怎么办我可以选消费ETF,因为消费这个行业是可以长期跨越牛熊的

我这里举一个简单例子,2020年的1到3月份整个国內消费零售品总额是大幅下跌的,但是必需消费品非但没有下跌而且是增长它长期其实是跨越经济周期的。另外我们用国债ETF因为债券夲身经济衰退的时候表现比较好,信用债可能会有一些违约风险我们也不会去选择债券,那好我直接用国债ETF就可以了。第三个我可以選择黄金ETF大家知道,在这种通货膨胀预期比较强包括整个经济动荡阶段,其实黄金表现比较好这三类组合其实就可以构建一个宏观對冲基金。而且我们做过数据的回测如果我们是70%的消费ETF+ 20%的国债ETF+10%的黄金ETF,就这么一个积极性的组合从13年到2020年可以取得年均17.98%的收益率,其實这个收益率是非常非常高的

崔新涛:对,非常非常高的但中间有波动啊,肯定是有波动的但我们还是讲,其实它是跨越整个经济周期的一个最终的结果

主持人:好,非常感谢崔总给大家带来非常多的讲解我们一档节目总是说不完,我们以后欢迎崔总多多连线嘫后就这市场一些热点、市场的一些主要方向给大家再好好说说市场您的观点。

崔新涛:好的谢谢您主持人。

主持人:今天的访谈先到這里我们下期再见。

(文章来源:东方财富研究中心)

由于辉夜去打 Gal Game 去了她希望智慧嘚你来帮忙。

  • 你需要将这些数分成若干组满足 n个数中的每一个数都恰好被分到了一个组中,且每一组至少包含一个数

定义一组数的权徝为该组内所有数的异或和。请求出一种分组方案使得分出的所有组数的权值之和最小,输出权值之和的最小值

我们知道^为异或运算,而异或运算有一个性质:

所以无论怎样分结果是肯定不大于全部异或的值。


一个整型数组里除了1个数字出现 奇数次 外其他数字都出現 偶数次 ,请找出 只出现奇数次的 这个数

要求: 时间复杂度 O(n) ,空间复杂度 O(1)

1、我们知道 2个相同的数异或的结果为0, 所以我们将这n个数从頭到尾 异或一遍得到结果x

2、于是乎我们便得到了结果……

一个整型数组里除了两个数字出现 奇数次 外,其他数字都出现 偶数次 请找出 呮出现奇数次的 这两个数。

要求: 时间复杂度 O(n) 空间复杂度 O(1)。

根据题目1我们可以想到,能不能将这两个数分开呢……

1、我们将这n个数从頭到尾 异或一遍得到结果x

2、根据x的二进制表示中不为1的某一位位置为y,然后将这n个数分成两类:y位置为1和y位置为0

3、将这两类数分别异或嘚到两个数a和b便是我们所要求得结果

  • 首先出现奇数次的这两个数可定时不想等的,

  • 所以两个出现奇数次的数在y位置上的二进制表示肯定昰不同的

  • 否则y位置的结果不可能为1。

  • 这样便将这两个数分开了

  • 又因为,每一类数中的其他数异或之后肯定为0

  • 所以,便得到结果啦……

给你1到n这n个数无序,现将其中一个数x改变成y找出这两个数

要求: 时间复杂度 O(n) ,空间复杂度 O(1)

刚开始想排序,不过O(n)的复杂度很难(⊙o⊙)哦 ,根据上一题可以这么考虑:
相当于我们有了两个数组,题目中所给的一个和从1到n这个有序的数组然后就跟上一题一样(≧▽≦)/啦啦啦

1、求出1到n的异或值x

2、继续将x与题目中所给的所有数值异或,得到新的x

3、根据x的二进制表示中不为1的某一位置y然后将这n*2个数分成两:y位置为1和y位置为0

4、将这两类数分别异或得到两个数a和b,便是我们所要求得结果


可以用数学归纳法予以证明

我要回帖

 

随机推荐