- 浏览: 888113 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (509)
- android (55)
- CSS (23)
- eclipse (25)
- Data Structes and Algorithms (53)
- J2SE (87)
- Java_面试学习_j2se (26)
- java_面试学习_非技术 (13)
- java_gui (2)
- java_设计模式 (27)
- JDBC (10)
- java_web (15)
- hibernate (5)
- Oracle (37)
- Struts2 (7)
- Word-----dos (24)
- Jbpm (3)
- java小技巧 (8)
- math (1)
- flex (12)
- WebService (4)
- 生活 (9)
- 小框架或小语言 (27)
- spring (1)
- 面试~~~软实力 (7)
- jstat的用法 (1)
- jmap (1)
- 数据链路层和传输层的流量控制区别 (1)
- shell (0)
- 财商 (1)
- javascript (0)
- js研究 (1)
- 代码收集 (0)
最新评论
-
海尔群:
http://jingyan.baidu.com/articl ...
android加密 -
完美天龙:
------------------------- ...
asm----字节码操纵 -
houniao1990:
大神,请问 string 类型 定义为 oracle的 cha ...
hibernate注解 -
JamesQian:
Line:103
f.doFilter(msg);
是否需 ...
责任链模式_过滤器模式 -
sacoole:
好评
interview--- 如何从N个数中选出最大(小)的n个数?
共有三个瓶子,容量分别为12,8,5 现有油12斤放在容量为12斤的瓶子中,问怎么样能倒出6斤油? /* 思路:因为不知道怎么倒油,所以只能乱碰,也就是穷举法,把所有倒油的步骤都搞出来,然后判断是否倒出想要的结果,如果得到了想要的结果,那么就不倒了,对于每一种到完后的状态,如果不符合要求,那么每一个桶又都可以是src和target 与字母全排列最大的不同是,字母全排列中因为每个下一步都需要成为一个结果,那么就把每个下一步放入递归函数,而倒油问题是下一步可能的集合中只有一个符合结果,或者不符合结果,如果符合结果则打印,不符合结果则递归 */ /*如何实现穷举是关键,穷举什么:在每一次倒油的选择中出油桶应该试着倒到每一个目标桶中,也就是第一个桶需要试着倒到第二个桶,第三个桶。。。中 那么如何确定出油桶呢。。? 当然每个桶都有权利做出油桶 */ class Barrel { int maxCapac; // 最大容量,不要设emptyCapac,如果设置两个变化的东西,程序会很难写,所以把emptyCapac变成一个方法 int curCapac;// 当前拥有的容量 public void pop(int num) { // 作为出油桶,倒出油 // 如果目标桶没容量或者出油桶没油,都不能倒 curCapac -= num; } public void push(int num) { // 作为目标桶,倒入油 curCapac += num; } public int getEmptyCapacity() { return maxCapac - curCapac; } } class BarrelManager { private List<String> steps = new ArrayList<String>(); private void go(List<Barrel[]> nextBarStatuses){ for(Barrel[] b : nextBarStatuses){ if(b[0].curCapac == 6 || b[1].curCapac==6 || b[2].curCapac == 6){//下面的走法中只有一种走法可能可行 System.out.println("倒油完成 A="+b[0].curCapac+" B="+b[1].curCapac+" C="+b[2].curCapac); break; }else{ System.out.println("倒油未完成 A="+b[0].curCapac+" B="+b[1].curCapac+" C="+b[2].curCapac); go(getNextSteps(b)); } } } /** * 得到所有下一步的正确的桶的状态,这个方法得到的是前一种状态下面的每一种倒油状态所导致的下一种走法 */ public List getNextSteps(Barrel[] barrels) { List<Barrel[]> nextBarStatuses= new ArrayList<Barrel[]>(); for (int sourcei = 0; sourcei < barrels.length; sourcei++) {// 每一个桶都有机会做出油桶 for (int targeti = 0; targeti < barrels.length; targeti++) { // 每个桶有有机会做目标桶 if (sourcei == targeti) continue; // 如果出油桶==目标桶,不给自己倒 int minNum = Math.min(barrels[sourcei].curCapac, barrels[targeti].getEmptyCapacity()); barrels[sourcei].pop(minNum); barrels[targeti].push(minNum); //判断是否倒油步骤出现过,这里用字符串,是技巧哈 String step = "A="+barrels[0].curCapac+",B="+barrels[1].curCapac+",C="+barrels[2].curCapac; if(steps.contains(step)){ //如果倒油步骤出现过,避免死循环,就不进行下面的了 rollback(barrels, sourcei, targeti, minNum); continue; } steps.add(step); //记录这时的状态 Barrel[] bs = cloneBarrel(barrels); list.add(bs); rollback(barrels, sourcei, targeti, minNum); } } return nextBarStatuses; } private void rollback(Barrel[] barrels, int sourcei, int targeti, int minNum) { barrels[sourcei].push(minNum); //还原状态 barrels[targeti].pop(minNum); } private Barrel[] cloneBarrel(Barrel[] barrels){ Barrel b1 = new Barrel(); b1.maxCapac =barrels[0].maxCapac; b1.curCapac = barrels[0].curCapac; Barrel b2 = new Barrel(); b2.maxCapac =barrels[1].maxCapac; b2.curCapac = barrels[1].curCapac; Barrel b3 = new Barrel(); b3.maxCapac =barrels[2].maxCapac; b3.curCapac = barrels[2].curCapac; return new Barrel[]{b1,b2,b3}; } }
发表评论
-
c语言题
2011-10-12 10:24 680/********字符串逆序函数************/ ... -
数据库面试网址
2011-04-07 13:18 1067http://topic.csdn.net/u/2009030 ... -
interview--- 如何从N个数中选出最大(小)的n个数?
2010-12-28 20:07 5145这篇文章是抄过来的 ... -
interview--- 警察抓逃犯问题
2010-12-28 17:36 1210题目:A国由1000000个岛组成,岛与岛之间只能用船作为 ... -
interview----1 0 1 0 0 0
2010-12-28 17:10 917题目:6个数组成一个串: 1 0 1 0 0 0 。它的首 ... -
interview--- n长链表
2010-12-28 17:06 1215题目:给你一个长度为N的链表。N很大,但你不知道N有多大。 ... -
interview----(蚂蚁)一根1米长的木棒漂流在海上
2010-12-28 16:56 1396题目:有一根1米长的木棒漂流在海上,突然从天空中降下100只蚂 ... -
interview-----str----倒序输出
2010-11-16 19:15 1133方法一:利用String类的toCharArray(),再 ... -
interview----strChina
2010-11-07 12:00 10461、编写一个截取字符串的函数,输入为一个字符串和字节数,输 ... -
interview---智力题2
2010-10-22 13:42 1043网上抄的 1.一辆学校班车里面能装多少个高尔夫球? ... -
interview----智力题
2010-10-14 08:53 13241.烧一根不均匀的绳 ... -
interview--- 求下排数
2010-10-12 20:34 1297给你10分钟时间,根据上排给出十个数,在其下排填出对应的十 ... -
interview-----百元与百鸡
2010-10-12 19:01 1156公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱,用一百 ... -
interview---str----315(三百一十五)
2010-10-11 21:33 1000数学技巧: 如果想把连续的几位归到一类,那么使用除法 比 ... -
interview-----java对象排序
2010-10-11 20:31 996现有一个类person有三个属性,分别是name,age ... -
interview---reg---split("|")
2010-10-11 19:57 1530试题如下: "|DF|A".s ... -
interview---str---aaaddxxxxddddxxxx
2010-10-11 19:12 1637/* 1. 一个字符串参数(value)由字母(a-z, ... -
题目---反射应用
2010-08-26 08:51 9921。将任意一个对象中的所有String类型的成员变量所对应 ... -
题目---参加会议
2010-08-25 09:02 1607参加会议:有人邀请A,B,C,D,E,F6个人参加一项会议 ... -
题目--- 蚂蚁爬杆
2010-08-24 15:57 1267有一根27厘米的细木杆,在第3厘米、7厘米、11厘米、 ...
相关推荐
这份资料是针对新版北师大版三年级数学上册期末考试的练习题目... - 问题6是一个简单的购物问题,通过剩余的钱来倒推出每袋化肥的价格。 这些题目全面覆盖了三年级数学的基础知识,有助于学生巩固所学并提升解题能力。
7. 厨师倒油问题是一个经典的容量问题,可以通过一系列的倒油操作来达到目标。我们可以通过编程模拟倒油的过程,使用两个桶的容量作为变量,通过逻辑判断来确定倒油的步骤。 以上这些题目都是通过逻辑推理和编程...
- 油环的主要作用是刮油,帮助润滑系统正常工作。 - 空气滤清器用于清除空气中的尘土,保护发动机免受磨损。 9. 制动系统与安全性: - 制动蹄与制动鼓间隙过大可能导致叉车跑偏,需及时调整。 - 机械式叉车通常...
- 例5:油桶问题,根据油和桶的重量变化,倒推出油的原始重量和桶的重量。 此外,还有一些涉及倒推法的应用题,例如数学考试得分的计算、树林中鸟的分布问题、寻找特定数字的过程等。这些题目都要求学生灵活运用倒...
- **例4**是两桶油的转换问题,通过多次交换油的数量,推算出两桶油的初始重量。 5. **训练题分析**: - **训练一**到**训练四**提供了类似的还原问题,分别涉及数字运算、物品分配和油量转换等不同场景,要求...
- 题目5倒出一半油后,剩余的油和瓶重1.45千克,所以原有油2*(2.7-1.45)=2.5千克。 4. **计算题**、**作图题**和**解决问题**部分涉及了运算、图形变换和实际应用问题,需要具体的解题步骤和计算,此处不再逐一...
- **知识点扩展**:倒掉食物不能解决已经摄入体内的毒素问题,应及时采取措施并寻求医疗帮助。 10. **消化道组成部分** - **题目解析**:消化道包括口腔、咽、食管等部分,但不包括气管。 - **正确答案**:C ...
#### 题目13:油桶倒油问题 - **题目描述**:有两桶油,甲桶油重是乙桶油重的4倍,如果从甲桶倒入乙桶18千克,两桶油就一样重,原来两桶各有多少千克油? - **解析**:设乙桶原有油x千克,则甲桶原有油\[4x\]千克。...
第二次倒出剩下油的,由于第一次已经倒出了,剩下的油是剩余的,则第二次倒出的也是剩余的一半。因此,两次倒出的油量相同,答案是C,两次倒出一样多。 2. 接下来的题目是分数加减法的计算练习。在这些题目中,我们...
26. 数列与倒推:题目27使用倒推法,通过剩余书籍的数量逐步求解原有书籍总数。 27. 运输成本优化:题目28涉及运输费用的计算和优化,通过不同车型的组合找出最低成本方案。 28. 系统方程解题:题目29需要通过设立...
- 油桶问题需要理解分数的乘除运算,找出剩余油量与已倒出油量的关系。 2. **百分数应用题**: - 百分数应用题通常涉及到计算和比较百分比。如油菜籽的出油率问题,需要根据出油率和已榨油量计算剩余油菜籽。 -...
压缩比是指气缸总容积与燃烧室容积之比,题目中提到的选项表明汽油机压缩比一般在7~10之间。 - 发火间隔角:直列四缸四冲程发动机的四个气缸依次进行进气、压缩、做功、排气四个冲程,形成一个工作循环,发火间隔角...
- 油瓶重量问题,倒出一半后减去的重量是油的一半,所以油的重量是(2.7-1.45)*2=2.5千克。 - 正方体拼成长方体,表面积减少2个正方形面的面积,即50平方厘米。 - 无盖水桶用料计算,需要所有侧面和底面面积之和,...
- **例4**:两桶油相互转移的问题,利用两次转移后油的总量来确定原始的油量。 - **例5**:两只猴子抢桃子问题,通过反复的转移和交换,计算出猴子最终各自拥有的桃子数。 4. **训练题目**: - **训练一、训练二...
3. 把3公升提桶里的水倒掉,再将5公升提桶里的2公升水倒入3公升提桶。 4. 再次将5公升提桶装满水。 5. 将5公升提桶里的水倒入3公升提桶,由于3公升提桶已有2公升水,所以只能再加1公升水。 6. 这时5公升提桶里剩下4...
两桶油互相倒的问题,通过最后各自24千克,我们可以逆向计算出原来每桶油的重量。 **训练3**: 1. 画片交换的情况,根据两人最后的画片数量,反推他们原本各自的画片数。 2. 人民币交换问题,通过倒推确定甲乙两人...
对于沙漠储油点问题,实际的算法实现会包括初始化变量 `dis[]` 和 `oil[]`,然后使用倒推策略,根据已知的卡车油耗和载油量,计算每个储油点的位置和油量。每一步都会确保卡车能够从当前储油点到达下一个,并返回...
- 包含多个分数应用题,例如仓库存粮问题、桶装油问题、竞赛人数问题、修路任务问题、面粉运输问题、书籍分配问题、学生人数问题和做题数量问题。这些问题都需要通过建立分数关系,找出关键的对应分率来解决。 ...
6. **瓶中水与酒精混合问题**:每次倒出一部分并加入新的液体,需要追踪酒精在整个溶液中的比例变化,使用分数运算。 7. **收割麦地问题**:工作效率的变化会影响完成任务所需的时间。需要设定工作效率的初始值和...
**题目1:** > 液化石油气管道的日常管理是每—检查一次管道的连接件,每—检查一次管道的腐蚀情况. **选项:** - A. 年、日 - B. 月、日 - C. 日、月 - D. 日、年 **正确答案:D** **解析:** 液化石油气管道的...