今天开始看《编程语言实现模式》这本书,没有好好听编译原理好多东西都忘了,算是做个笔记吧。 ###基本解析模式
###问题:判断子树 给定两颗二叉树A,B,判断A是否是B的子结构。 bool issubtree(TreeNode* bigtree, TreeNode* smalltree) { if (smalltree == NULL) return true; if (bigtree == NULL) return false;...
###问题:链表合并 合并两个已排序的链表 input: 1->3->5; 2->4->6 output: 1->2->3->4->5->6 class ilistnode { public: ilistnode(int value, ilistnode* next = NULL) :Value(value), Next(next) {...
###问题:字符替换 实现一个函数,将字符串中的每个空格替换为”%20。 input:”we are happy” output:”we%20are%20happy” void replacespace(char* istring,int length) { if (istring == NULL || length < 0) return;...
###选择题 答选择题只有一个感受,数学不好抱憾终生= =,选择题差不多三分之一是数学方面,概率,排列组合之类的题目,三分之一的C++基础知识,三分之一的数据结构和算法,比如红黑树、二叉树。 ###简答题 简答题有三道。感觉都是比较实际的问题 #####Freelist 第一道题大概是为了避免频繁的new/delete操作,实现一个freelist,管理定长的内存块,当需要内存时从freelist中申请,当归还内存时不直接归还给OS,而是归还到freelist中,要求考虑多线程的问题,并且不能使用stl。 #####Answer 我的做法是用数组保存内存块,至于多线程的问题就是用的最简单的加锁。 #####用户配额 第二题是一个对不同优先级的用户给予不同配额的题目,比如对A用户20%,B用户40%,C用户40%,那当有总共有100个请求的时候就需要按比例来给用户处理,但如果只有一个用户的请求时就要100%的处理那个用户d请求。 #####Answer 生成一个随机数,通过判断随机数所在的范围来选择相应哪一个用户的请求。 #####响应序列 第三题是输入一串序列,如1324765。 输出1 23 4 567 就是如果低优先级的请求先到的话,不立即响应,等到比它优先级高的都输出了才将他输出,并且要求写出。...
###问题:整数输出 输入数字n,按顺序打印出从1最大的n位十进制数。 input:3 output: 1,2,3,…999
###问题:还原二叉树 (1)根据一个二叉树的前序遍历和中序遍历还原二叉树。 (2)根据一个二叉树的后序遍历和中序遍历还原二叉树。 #include<iostream> #include<list> using namespace std; typedef list<int>::iterator index; class TreeNode { public: TreeNode(int value, TreeNode* left =...
###问题:调整数组顺序使奇数位于偶数前面 (1)输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。 (2)考虑设计一个模式解决同类问题。 void swap(int &a, int &b) { int c = a; a = b; b = c; }...
###随便说说 去年年末,周围有一些同学开始玩一个叫乱斗西游的手游,其实当时对这些手游的观念就是这些手游有啥意思呢,之前玩过的手游可以用两款代表,一款是无尽之剑,画面精美,剧情也还好;另一款是部落冲突,画面很自然,玩法也很有趣,而当时对其他手游的看法就是觉得无聊。 后来在看同学玩的时候,突然觉得好像还挺有意思的,它的口号是moba加rpg游戏,现在想来,应该叫它单机游戏,但是当时并没有注意到这一点,觉得平时十几分钟打一局,不想玩还可以自动,确实挺有意思的,就开始入坑了。 #####总体感觉 乱斗西游这个游戏里面内容特别多,多到我觉得对我来说这是它最大的问题,很多内容都是很无聊,但是每天都可以做,但是做起来并没有什么意思,只是单纯的为了奖励做得,比如英雄祈愿,英雄试炼之类的,但是可能对于很多30多岁的人来说,这么多内容可能正是他们想要的,可能他们的乐趣并不在对战上,而恰恰是这些繁琐庞杂的内容吸引着他们。 另一个问题就是,它确实是个单机游戏,你不管做什么,你可以操控的都是你一个人,你的其他队友,对手,都是电脑选择的,电脑操控的,甚至不是真实存在的,是电脑生成的,但是这确实是手游的局限性,不同的设备差异太大,网络环境之类的因素,也导致它不可能像端游一样,我反而觉得这样的方式恰恰是这个游戏设计的高明的地方。 在现在的手游市场里,其实已经算是一个很难得的厂商和用户都比较满意的游戏了,大家一边骂着网易黑,一边继续玩着这个游戏,虽然我快要弃坑了,但是确实挺喜欢这个游戏的。 ###游戏经历 想了想觉得按英雄说说这个游戏比较好吧,这个游戏玩到现在一个有了12个五星英雄,看着他们就像小智看着皮卡丘的感觉。 #####铁扇公主 铁扇是第一个五星的英雄,首先升她绝不是因为她是女生,当时新手普遍的阵容就是孙铁牛(孙悟空,铁扇,牛魔王),我开始的阵容也是这样的,铁扇是一个非常全面的英雄,带控制,带回血,大招的伤害也可以,曾经排行榜上也流行过地铁阎(地藏,铁扇,阎王),号称守榜无敌的阵容,贴吧里经常有用铁扇过图的教程,总之铁扇这个英雄应该是新手必备的了,升级肯定不会后悔的,60级以前,基本都是人手一个的。 #####地藏菩萨 曾经是乱斗里最热门的一个英雄,因为大招的分摊伤害和嘲讽,反弹,简直是一个完美的坦克,但是后来由于出了好多针对的经文,技能也不断削弱,没有之前那么强势,但仍然是一个不错的坦克,不过没有那么明显的优势了,对地藏这个英雄来说,最早的时候就是超级明星的存在,一个人带动整个阵容,现在差不多就像大部分英雄一样,需要合适的阵容才能体现他的价值。 #####混世魔王 西游记里的酱油角色也有春天,混世魔王由于有两个技能的法术加成很高,所以经常被人当成法坦来打,加上他的控制特别强力,起手也很快,差不多是最快的,有一段时间也是一哥的存在,但是后来也需要特定的阵容才能打出效果,特别擅长分割战场的英雄。 #####哪吒 孙铁牛以后我的阵容就是上面三个英雄,后来我发现,实在是没有伤害,伤害最高的居然是铁扇公主,当时我还没有法术装备,没办法就选择了哪吒,哪吒到现在仍然是万金油的神级存在,有控制有伤害,各种装备都可以穿(物理的),加上大招有对队友的加成,大概一直都会是一个热门的英雄吧。 #####红孩儿 我第一个抽到的三星英雄,技能加成很高,伤害也很高,但是不适合打排行榜,虽然现在排行榜的情况我也不清楚,但是我觉得他只适合修罗和篝火,因为伤害高,但是自己没有控制,打排行榜会吃亏的,虽然有个盾但仍然很脆,声音特别可爱= =。...
###what is arcgis ArcGIS产品线为用户提供一个可伸缩的,全面的GIS平台。ArcObjects包含了大量的可编程组件,从细粒度的对象(例如单个的几何对象)到粗粒度的对象(例如与现有ArcMap文档交互的地图对象)涉及面极广,这些对象为开发者集成了全面的GIS功能。每一个使用ArcObjects建成的ArcGIS产品都为开发者提供了一个应用开发的容器,包括桌面GIS(ArcGIS Desktop),嵌入式GIS(ArcGIS Engine)以及服务端GIS(ArcGIS Server) arcgis-online ###创建应用程序 这里主要尝试创建一个简单的arcgis web应用。应用可以使用arcgis在线生成,也可以使用arcgis desktop在本地生成后发布到web上,这里使用arcgis online创建。 #####选取应用程序的类型 选择创建基于地图或者基于组的应用程序,这里创建的是基于地图的应用程序 使用地图查看器创建地图或者整合已创建的地图。 #####选择模板或构建器 当地图已经编辑完毕时,打开地图查看器,单击共享,然后单击创建 Web 制图应用程序。(要选择共享给所有人或组织,才能创建web应用)...