解题报告- ch2

127 - "Accordian" Patience
  //1.测试数据大约30000条
  使用STL的stack就是屎
  用两层vector,并利用线性表可以在规定的时间内解决掉


101 - The Blocks Problem
  //1.思路:
  使用线性表来解决, 记录每个pile的初始方块,
  记录每个方块的left 和 right
  通过clear 和 move 来完成四个操作
  //2. 细节注意:
  在线性表中, 需要注意每一个元素的left 和 right


133 - The Dole Queue
  //1.
  这一道题我是用线性表解决的myleft[],myright[]
  但是因为用了线性表就无法在目前的代码下用 模运算 来处理k与m,
  因为木有记录当前元素应当算链表中的第几个!!!


10152 - ShellSort  龟壳排序
  //1.思路
  由于排序的次数要最少,所以一只乌龟最多只能被提出来一次,而其他的则没有被提出来过
  所以 结果中的那堆乌龟最下面肯定是没有被选中的
  所以 两个数组从下到上 做对比 知道原先的数组访问到第0个,
  结果数组中剩下的就是被提出来的乌龟了。


442 - Matrix Chain Multiplication 矩阵链乘
  //1.思路
  用堆栈记录表达式,遇到')'弹,其余入栈
  //2.弹得时候记得堆栈是后进先出


11111 - Generalized Matrioshkas
  //1.思路 ; 子乔的娃娃。。。一个套一个。。
  利用堆栈,比如说碰到了4就往前找 负数,如果第一个负数不是-4,那就肯定不是正确地
  期间碰到的 正数 都是娃娃4号 所包含的玩具。
  最后将 4 压入栈
  最后应该只有一个元素 才能表示 解正确


11234 - Expressions
  //1.思路:
  构建二叉树,然后bfs遍历压入堆栈, 然后依次读取堆栈的值
  //2.
  利用数组避免 指针的运用, 没读入一个字符创建一个节点i
  char n_val[kExp];
  int m_left[kExp],m_right[kExp];









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值