自己遭遇挫折作文
淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】
1、小兔子的遭遇作文400字
一个阳光明媚的下午,我和李婉约一起去了一个小森林探险。
我们背上背包,拎起水壶,启程了。刚走进森林,我们就遇见了黄伟伦和刘葳,于是,我们结伴而行,一起往森林深处走去。突然,我们推荐有隐隐的哭声,我们就像哭声的方向走去,就在这一课,领头的我,惊呆了!
同学们也围了上来,也惊呆了,谁也没开口,过了一会儿,我开口了:“这……,这不可能!竟然是一只那么小的兔子在我们面前哭!太不可思议了!小兔子停止了哭泣,看了看我们,开口了:“嗯……你们好,我叫多多,今年四岁,我的爸爸妈妈都被可恶的猎人抓走了,猎人不让我哭,如果我哭了,就把我和我爸爸妈妈一块杀了,所以,等猎人走了我才哭的,大哥哥,大姐姐,你们能帮我找到我的爸爸妈妈吗?”
“当然可以,”我边说边抱起多多,对其他三名同学说:“丁丁队,出发!拿起武器!准备战斗!”,我们走着走着,发现了那个猎人,我们停下了脚步,www.99【【微信】】.com,猎人也停下了脚步,就趁这个时机,我们大声说:“不许动!”猎人回了一下头,发现我们每个人都有武器,所以马上放下了小兔子的爸爸妈妈,这时,我马上给森林门口的警卫打电话,过了一会儿,警卫来了,然后把一个牌子挂在了猎人的脖子上,上面写着:此人犯了抓动物之罪!大家都笑了起来。
今天,我请大家保护动物!
编辑推荐:
更多写事作文进入写事作文大全:
【1】 【2】
2、 小学生作文-遭遇大飞蛾
“哇!”楼下妈妈的一声叫唤引起了我的注意。我不禁奇怪这是为何,我急忙跑去问。原来只是为了只飞蛾呀。“真是太大惊小怪了。”我不禁想着,自己也往楼下走去。 突然,一只手掌大的飞蛾展现在我的面前,我有些惊呆了,恨不得妈妈大叫“哇”呢,但现在叫可不行,它可能顺着叫声飞临我身上,那可更吓人。我尽力捂住嘴巴,忍住不叫,并缓缓地往后退去,总算是走出了“危险区”。但这下,我可没有感到一点轻松,我该怎么下楼成了问题。 望着那如同战斗机般的大飞蛾,我越加紧张,但到这个地步了,有什么办法呢?我也只有硬着头皮冲过去了,我蹬着脚,正当我要开冲时,我突然看见它在楼梯上爬了几步,我的决心一下被打碎了,反而带来的是更多的害怕:它会不会在我走过时爬上我的身体?还是直接攻击我?还是……我紧张万分,这大飞蛾真是给我带来了不少麻烦,就在这时,我突然想到:可不可以从它上面跳过去呢? 只好这样办了。我悄悄地走到离飞蛾最近的一个阶梯,准备越过。我把脚一蹬,手一握,用尽全力,往下面拐弯处跳去,这时,意外发生了。那飞蛾突然飞了起来,我刚一落地,就开始了疾跑,那飞蛾居然在我脑后穷追不舍,我慌得心跳加快,连蹦带跳地跑出了门……
3、遭遇_记事作文700字
在我来到这个大千世界的十五年中,我经历过太多太多,如同这漫天的繁星,在这群星之中,我有快乐也有悲伤;有喜悦也有失望,有郁闷也有爽朗……最难忘怀的是那一次的事。
那是一个冬天的早上,我兴致勃勃地来到学校,刚踏进教室门口,就觉得气氛不太一般,以往的教室总是吵吵闹闹的,可今天却是鸦雀无声。可能是被他们所感染,我轻手轻脚地走到座位旁,可一坐下就发现自己面前有着一张满目疮痍的语文试卷,那是我的。看着试卷,我惊呆了,因为上面的分数让我觉得晴天霹雳。
我放下书包,双手颤抖地反复翻看着试卷,看看是否能找到一点可以安慰自己的地方。那时,原本阳光明媚的心情一下子被乌云遮掩,让我不知所措。看着别人那比我好的多的成绩,心里更不是滋味了,那时我想如果我是他们那该多好呀!这样我就可以不用再为成绩而烦恼了。一整天,我的脑子里总想着要事是自己能看清楚题该都好,想着回家如何把成绩给父母看,想着如何向他们解释,能免除一顿打……哎,这一天就这样浑浑噩噩地过着。
时间飞逝,那万恶的放学铃声响了起来。我艰难地从座位上站起来,步履维艰地走出校门。回到家,我硬着头皮把那不堪的成绩说了出来,虽然父母出乎意外地没有怎么说我,可是我心中十分难受,还不如让父母狠狠地打我一顿来的爽快。
望着窗外,我依旧沉浸在痛苦中。月光透过窗台,照亮了我的书桌。我低下头看着桌上这张已经印满了泪痕的试卷,眼泪又止不住地流泻而下。这时,从窗外传来了一首歌《隐形的翅膀》。熟悉的旋律,熟悉的歌词,让我的心慢慢平复。是啊,这不正是此刻的写照吗,难道一次失败就代表了全部吗?不,我要奋起,要改变,我不用羡慕别人有多好,其实我是最好的——虽然我不太聪明,但只要我肯努力。这样,属于我的彩虹便会出现的。于是,我捡拾起信心,把试卷上的错题认真地整理到本子上……
这次遭遇,让我知道自己不应惧怕挫折,只要我努力,挫折就如同一张纸,一捅就破。
4、燕子遭遇战作文700字
春天来了,好一派生机勃勃的景象啊!桃花张开了它樱桃般的小嘴,稚嫩又可爱。柳树抽出了新的枝条,还在跳舞呢。天空也是纯净的宝石蓝,挟来大自然无限的生机。
今天可真是个好日子,上五年级的 在家做完了作业,就出去透透气,活动活动筋骨,再看看小院里的桃花是否该浇水了。徐妍芝刚走到院子里,就听到一声声燕子七嘴八舌的声音,还有些燕子试图用稚嫩的双臂扑打着,好像要飞起来似的。有一只燕子好像太急于飞翔了,她站在燕子窝的边缘,使劲地扑打着翅膀,嘴里还唧唧喳喳的,好像要说:“我一定能飞起来,我马上就要飞起来了!”结果这只小燕子没站稳,左摇右晃的,最后还是掉下来了。徐妍芝把手捧起来,想去接住她,但还是没有接住,随后小燕子就重重地摔在了地上,动弹不得。
徐妍芝往下一看,呀!不好了,她的猫莉莉,正趴在小燕子的旁边傻呆呆的望着小燕子呢。徐妍芝大叫一声:“莉莉快住手!”小猫莉莉被突如其来的喊声吓退了两步,但过了不到半分钟,莉莉反应过来了,而徐妍芝却定住了,半天没有动静。莉莉又开始玩起了这只燕子了,好像在蹂躏这只燕。徐妍芝又大吼一声:“快点住手!”莉莉这次又后退了两步。徐妍芝赶忙蹲下捧起小燕子,但小猫莉莉又来了,声色紧张,好像很生气,不断地叫着,好像在说:“快把我的‘玩具’还给我!”徐妍芝不敢怠慢,捧起www.99【【微信】】.com小燕子掉头就进屋去。莉莉在后面紧跟着,好像说:“你不给我,我就跟着你偏不走了。”
就在这小燕子奄奄一息时,徐妍芝的爸爸回来了,看到莉莉再追徐妍芝,就在慌乱之中说:“不许胡闹!”莉莉回头看了一眼,徐妍芝也是。爸爸随后知道了事情的来龙去脉,说:“它身上还有伤,给它稍微包扎一下。”过了一个小时,就把它送到了燕子窝上。
小燕子走之前,还不忘回头,好像在依依不舍的告别。
5、 小学生四年级作文:骑车遭遇
早上,我像以往那样,骑着自行车和妈妈一起到妈妈单位。因为事先知道今天有台风影响,所以,妈妈准备好了两件雨衣。 刚开始骑出家门,阳光还照在我身上,可是后来运气就不好了:在民航路那儿,有个交叉口,剩下最后十几秒时,我正好骑过了马路,而妈妈被红灯拦住了,我本想自己先骑,正在这时,天突然下起了毛毛细雨。 于是我就在那儿等妈妈给我雨衣。红灯有60多秒,可那60多秒,对我来说是那么漫长,而且,雨越下越大,风也越挂越大,好不容易妈妈才来,这时,我的衣服和裤子已经全湿透了。 妈妈递给我雨衣,我慌忙穿上雨衣,正在我穿好雨衣时,雨停了,哎,白白穿雨衣了! 又过了一会儿,太阳出来了,我想:既然太阳都出来了,肯定不会下雨了。于是,我把雨衣甩到身旁。骑了一会儿,没想到,天气变化得这样快,一下子就下起了倾盆大雨,把我淋了个措手不及,我急忙穿好雨衣,然后继续骑车,可又没想到,那淘气的风把我的雨衣从身上吹到了我的头上,把我的眼睛遮住了,害得我只好来个急刹车。 哎,老天明明是存心跟我作对吗!早知道我不骑车了。
『沈老师评点』一个生活小片段也能写成一篇小作文,鼓励小作者的选材。小处着手是练好文章的开始。
6、小学生童话作文:小鸟的遭遇
一根废弃的电线杆挺立在路边,尽管电线早已从他的头顶上撤去。
好多年过去了,电线杆依然在路边。
一只小鸟多次从他头顶飞过。
这一天,小鸟又来了。他落在一边,对电线杆说道:“我说你这根电线杆,这么多年在这里寂寞不寂寞啊?这么多年,谁在乎你呢?要是我,早就闷死了。”
电线杆听了,只是微微一笑。
小鸟更加得意了:“你看我,这么多年来,自由自在,要到哪里去就到哪里去。春天,挑花丛中有我的身影。夏天,茂密的绿林里有我的歌声。秋天,丰收的田野里有我的笑容。冬天,我和飘舞的雪花相伴。可是你呢,就站在这个地方,没人理你,没有自由,没有欢乐,多无聊啊!”
电线杆这时并没有生气,他看了看趾高气扬的小鸟,慢条斯理地说了几句:“哈哈,小鸟,你怎么知道我的心情,你怎么知道我的欢乐?我在这里这么多年,天天看着各种各样的人从我身边经过,那欢乐的笑声,我听了真舒服。一年四季,我静静地欣赏着花开花落,下雨飘雪,从不感到寂寞。而且,每时每刻依然体现出我的价值,比如:很多农民的牲口以及小羊,经常栓在我身上,我这是为大家服务,感到很光荣。昨天,一位老奶奶还靠在我的身上休息,不断地夸我呢……”
没等电线杆说完,小鸟就飞走了。
第二天,小鸟又飞来了。
小鸟不知道一位老人已经在电线杆的旁边布上了一张网。
电线杆大声说:“小鸟,别往前飞了。”
小鸟满不在乎,更不听电线杆的呼唤。结果,一下子钻进网里了。
小鸟太后悔了:不该这么高傲,不该不听电线杆的话。可是,一切都已经晚了。
小鸟被老人捉住了,他的下场很难预料。
而电线杆依然在这里,静静的挺立着,听风的缠绵,雨的诉说……
7、 小学生四年级作文:理发遭遇
妈妈叫我去剪头发,因为我的头发太长了,妈妈还吓我说:如果不剪的话,人体身上的营养都会被头发吸走的。我只好被迫前往。 我跟着妈妈来到了理发店,呀,这里的人可真多啊!有染发的、剪发的、吹发的……如果继续有这么多人,该多好啊!那我就有机会轮不到了,走人呗。时间一分一秒的过去,就在我有点不耐烦的时候,忽然听到“哇”的一声。 我连忙转过头,只见一个似乎二三岁的小弟弟耳朵被剪刀擦破了,血也流出来了,接下去便是他妈妈跟理发师的争吵,“你怎么做理发师的,叫你理发,又不是叫你剪耳朵,你是不是没长眼睛啊,孩子还这么小,你知道他有多痛吗?现在叫你们老板过来,要你们赔钱!”理发叔叔也不甘示弱:“你那小孩也太会动了,叫他别动,他偏偏还把头摇得像拨浪鼓似的,你叫我怎么剪哪,你自己也不是看到的吗?还叫我们赔,没门!”“不行,要赔”。“不赔!”。他们你一句,他一句,差点打起来了。最后,在一个阿姨的劝阻下,才平息了事,理发叔叔最后拿出了30元。 我觉得这事小弟弟也真是的,这样动来动去的,除非神仙来了才可以把头发剪掉。理发叔叔也不对,既然把小孩子的耳朵剪破了,不说对不起,反而还跟客户吵架,不是在做生意吗? 过了半小时,终于轮到我了,先洗头,那叔叔的指甲也太尖了,我的头皮被“折磨”的在哭泣,终于抓好了,要洗头的时候才是最痛苦的时候,人要躺在靠椅上洗,头颈被那东西顶的像顶在尖石上一样难受,我在心里祈祷:叔叔,你可快点、快点……我可受不了了。呼!终于开始剪头发了。“阿姨,我先声明,你可得把我头发多留点啊!”可是妈妈向阿姨使了一个不寻常的眼色,好象是在说:“多剪点,多剪点。”剪完了。一照镜子,我的妈妈呀,我完了,完了,你就这么恨心那。哎!真是丑小鸭一个。 我发誓,以后,八台大轿也休想拉我到这个理发店。
8、环保作文:水仙花的遭遇
我是一株水仙花,一株美丽高贵的水仙花。
我生长在一个湖畔。在这个“小天地”里,凉风在耳边细语,天鹅在湖面上轻轻地游过,几乎不留一点儿痕迹。虾弟弟、鱼妹妹在水中嬉戏,荷花姐姐总是护着我,大树哥哥对我更是万分宠爱。于是,这个湖畔就成了我们的“生命之泉”。
可是好景不长,一群长着两条腿,能直立行走的“巨人”,闯进了这个“小天地”。他www.99【【微信】】.com们肆虐、疯狂地往湖畔里倒各种垃圾,有腐烂的水果,有死鸡,有塑料袋,还有动物内脏……我的饮食越来越不健康,患上了各种疾病。虾弟弟,鱼妹妹都惨死于污染。
人类呀,醒悟吧!忏悔吧!行动吧!
9、迟到的不同遭遇_初中作文
“丁零零”上课了,老师拿着教案走进了教室。但她的眉头不觉地皱了一下。今天班里有两个同学没来,一个是深受老师宠爱的璐璐,另一个则是成绩十分糟糕的小丁。老师不知是真没看到璐璐的空位置,还是怎的,看都没看璐璐的位置一眼,皱着眉头总盯着小丁的位置,嘴里还说着:“这个小丁,成绩这么差了,竟还迟到。” “报告”,璐璐手里提着书包站在门口,嘴里还有没嚼完的面包,用求助的眼神望着老师,“昨晚又学习到很晚吧!”老师没等她发话就问道。“嗯。” 璐璐听了老师的话,连连点头。“进来吧,以后早点休息,可不要因学习而影响身体。” 璐璐拿着书包,“逃”进了座位。 璐璐刚进去,小丁就已经站在了门外。“报告!”小丁站得十分笔直,恐惧地望着老师,深怕她会大发雷霆。“你来得也太早了吧!”老师瞪了他一眼。说完,看也不看他一眼,又继续讲起课来:“同学们,今天我们学习朱自清的《背影》……”小丁委屈地看着老师,本来就低着的头,现在就显得更低了…… “丁零零”下课了。老师站在门口,生气得对小丁说,“昨天电脑玩到几点啊?”小丁大气也不敢出,双手不停地摆弄着自己的衣角。“你说说你,这么大人了,成绩不好也就算了,还天天迟到。人家都是说笨鸟先飞,而你呢?”老师的话弄得小丁的脸一阵红一阵白。末了,老师还甩下一句,“等一下叫你家长来。” 不是说人人平等吗?老师对优等生与差生的态度的区别怎么就这么大呢?为什么不一视同仁呢?优等生迟到是因为学习太迟,而差生迟到就一定是因为打电脑游戏?老师真的不应该这样偏心啊!平等真的很重要啊!
10、蜻蜓的遭遇-童话作文800字
蜻蜓和蝴蝶是好朋友,她们一会儿飞到花朵上,一会儿停在树枝上,玩得很开心。
一天,小麻雀说:“你和蝴蝶姐姐飞行的速度差不多,但是你没有蝴蝶姐姐那样漂亮。你瞧瞧你自己,头大身子细,而蝴蝶姐姐身材不胖也不瘦,再加上色彩斑斓的翅膀,显得漂亮无比。”
“你胡说!”蜻蜓大声吼道。
“不信,你到水边照一照。”
蜻蜓飞到水边一看,发现自己确实如麻雀所说的头大身子细,和蝴蝶姐姐相比,自已就差远了。她伤心地回到家里,紧闭家门,再也不想出去了。这样过了两天,蜻蜓实在是待不下去了,垂头丧气地飞出了家门。突然,她想到了一条让自己变美的妙计,她张开翅膀,飞快地向远方飞去。飞呀,飞呀,飞了大半天,她来到了燕子医生家。燕子医生亲切地问:“小蜻蜓,你得了什么病呀?”蜻蜓吞吞吐吐地说:“燕子大姐,我想………想整形,让自己变得和蝴蝶姐姐一样漂亮。”
“你现在不是很漂亮吗?”
“燕子大姐,你就别再耽误时间了,快给我动手术吧,我等不及了。”
燕子医生没办法,只好给蜻蜓做了手术。这下可好了,蜻蜓在镜子前扭着腰,见自己的身体不再像以前那样瘦弱,而是变得很丰满了,她兴奋极了。
为了展示自己的美丽,蜻蜓迫不及待地向蝴蝶姐姐家飞去,可刚飞不远,蜻蜓就飞不动了,只好停下来歇歇再飞。原来蜻蜓因为整了形,身体变胖了,过去轻薄的翅膀承受不了如今丰满的身体,所以才会这样。
这时,蜻蜓看见一只乌龟在河边慢慢地爬着。蜻蜓看了看乌龟身上的大龟壳,笑着说:“乌龟大哥,你瞧你背上这壳,既累赘,又不漂亮,你何不把它摘掉呢?”乌龟听了哈哈大笑:“傻蜻蜓,你别看我这壳丑,可是它很有用,在遇到敌人进攻时,我们就可以用它来保护自己,怎能说摘掉就摘掉呢?美的东西固然很好,但要看它是否对自己有用,你说是吗?”
蜻蜓听了乌龟的话,恍然大悟。自己为了美,将原来轻盈的身子变得如此沉重,既失去了原来的特点,又不能轻盈地飞翔。于是她决定恢复原来的样子。她费了九牛二虎之力才飞到了燕子医生家。在她的再三请求下,燕子医生再次为她做了“复形”手术。
从此,蜻蜓又能像从前那样自由自在地和蝴蝶姐一起飞翔了。
11、一张茶几的遭遇童话作文600字
我是一张茶几,我又旧又破,桌上还有打过的草稿,苍蝇成了我的朋友,整天在我头顶上打转……“叮咚!”传来一阵铃声,紧接着,小主人去开门了,原来是男主人和女主人下班回来了,小主人见爸爸妈妈很累,马上就帮他们把包脱下,丢在我身上,爸爸妈妈们一下子就倒在沙发上,只听“砰!”一声,四只又臭又脏的脚全搭在了我身上,还没等我反应过来,我眼前全是烟,苍蝇也被烟吓跑了,原来男主人还抽起烟来了!本来两个包就够我受的了,还搭上四只又臭又脏的脚,现在又烟雾满天飞!如果我能像以前那样该多好啊!“呼!”吹来一阵风,我开始回想起以前的生活来。
我以前生活在大森林里,早晨一醒来,我就会呼吸大自然的新鲜空气,中午我会和朋友们一起上山打猎,到了晚上,我们会围成一个圈,坐在一起讲自己打猎的经过,多好啊!我多么希望再回到以前啊!
我又回想起被放在商店时的情形了。当时,我金光闪闪,身上被擦得发亮,灯光照得我眼睛都睁不开,有一个小男孩在我面前看了半天,最后以5000块钱的高价买下了我,经过几个小时的车程后,我终于到了他家,他一推门就喊到:“爸爸,我回来了!”原来小主人的爸爸早已回家了,我被放在沙发前,小主人给我盖上了一层毛毛的布,又软又舒服,还在我上面摆了三个花瓶,都装着五颜六色的花。小主人天天给花儿浇水……。
但有一天,小主人变了,他变得不再爱我了,任凭我怎么脏,怎么臭他都不再理我了。有一次,小主人把鱼缸搬到了这里,天天给它喂食,给它换水,而我却一无所获。有一次,小主人把把热腾腾的饭不小心倒在我身上,我“啊”的一声叫了起来,可主人头也不回的走了。到了晚上,老鼠就开始行动了,他们吱吱地吵个不停,没完没了,所以我一直没睡着觉,有一次,小主人放学回来,把书包往沙发上一扔,开始写作业,过了一会儿,因为没有草稿纸,他便在我身上写起竖式。我是多么渴望自由啊!
12、狐狸的遭遇_童话作文250字
天下了好几天大雪,狐狸出洞找食物。
在路上,看见小猫叼着一串鱼,狐狸假装大方地迎上去,说:“呦,猫小弟,你从哪弄来这么多鱼呀?”小猫回答:“这是我用尾巴钓来的呀。”
“尾巴真能钓鱼,我得学着点。”狐狸心想,小猫就教狐狸怎么钓,先把冰面敲开个坑,再把尾巴放进坑里,等待鱼上钩就行了。狐狸照着小猫说的去做,钓着钓着,狐狸发现有个猎人过来了,急忙想拔腿逃跑,可是尾巴却早被冻住了,猎人仔细一看,说:“你不就是上回从我的*下逃跑的狐狸吗?害得我追踪了三天三夜,还摔了一跤,今天怎么自投罗网了?”
狐狸这才知道上了小猫的当,谁叫自己总是欺骗小动物们呢,唉!这就是狡猾应得的下场啊。
13、苹果的遭遇-想象作文1200字
秋天到了,果园里瓜果飘香,果农们正在辛勤地采摘着新鲜的水果并准备把它们送往各地市场。看,树枝上那又红又大、圆溜溜的就是苹果,而我就是苹果家族的一员。
我像个圆圆的小皮球,皮肤光滑鲜嫩,在阳光的照耀下色泽诱人,穿着一件红黄相间的衣裳,头部有个小小的凹陷处,那里长着一根棕绿色的蒂。我和兄弟姐妹们一样,都想早点为人们服务,让人们品尝我们香甜的果汁,脆脆的果肉。于是当大家争先恐后地离开了母亲的怀抱时,满心欢喜。我看着他们带着最灿烂的笑容,随着装载着水果的大货车,他们都兴奋地离开了熟悉的家园,来到热闹的市场。
终于有一天,我也幸运地被果农挑中并采摘下来,送上了一辆开往福州的大货车上。一路上,我好奇地四处张望,欣赏天上变化莫测的云,哼唱着愉快的歌曲,未来的一切都是那么诱人,让我无比开心。忽然,货车司机一个急刹车,便把我从箱子里甩了出很远很远的地方,差点儿滚落车下。原来是车爆胎了,司机只好把车停字路边等待救援换胎。过了几个小时,司机换好车胎后又重新发动车子前进了,但是被扔出去的我已经没办法回到苹果箱子里了。随着车速的加快,我在车厢里乱滚起来,不知不觉中,我颠簸到了车门边上,眼看着马上就要掉下去了,我害怕地大喊:“快停车啊!救命啊!谁来救救我?”此时,我叫天天不应、叫地地不灵,悲剧还是发生了,随着车子不断颠簸,我被无情地地抛出了车厢,掉到了冰冷的马路上。“别走啊!你们等等我,怎么能抛弃我呀?”我难过地哭了起来,望着陌生的一切,我害怕极了。
俗话说得好,天无绝苹果之路。这时有个足球踢到了我的身边,随即就又来了一个可爱的小朋友,他捡足球时无意间看见了我这个“人见人爱,花见花开,车见车爆胎”的小苹果,起初还犹豫了一下,沉思片刻后,小男孩还是义无反顾地把我从冰冷的地上捡起来带回了家。我心花怒放地躺在小主人的手心里,愉快地回了家。不一会儿,小主人就给我冲了个舒服的“澡”,洗完澡,全身又恢复了往日的光彩,我心里美滋滋的。当主人准备吃时,我高兴极了,然而不幸的事又发生了,只见小主人咬了一口,“呸!怎么这么难吃呀?酸掉我的大牙了!”主人面有窘态,随手把我扔出了窗外。
“哼!冷酷无情的家伙,怎么能不珍惜别人的劳动成果呢?”我气愤地大喊,可是小主人又怎么能听得见呢?我只好忍着疼痛,漫无目的地在草丛里流浪。走着走着,突然面前出现了一只饥饿的狗。这只小狗全身脏兮兮的,两只小脚上沾满了臭水沟的淤泥。看到眼前的小苹果,它眼睛一亮,一口就把我叼到嘴里,然后用力地咬了一口!“好臭!这狗狗一定几十天没刷牙了!如果就这样被吃掉的话,那我还不如当初没有被摘下来呢!”我开始觉得恶心,想挣脱逃跑,没想到狗狗把我从嘴里吐了出来,原因很简单,大概是我太酸了吧!
天色渐晚,夜垂下满天星光的帷幕,这样的夜色多美好!拖着受伤的身体,我已经无力行走,倚着一堵墙,想念我的兄弟姐妹们。过了一会儿,一个乞丐靠近
算法软考题
- 一:故事背景
- 二:分治法
- 2.1 概念
- 2.2 题目描述
- 2.3 代码实现
- 2.4 总结提升
- 三:回溯法
- 3.1 概念
- 3.2 题目描述
- 3.3 代码实现
- 3.3.1 TreeNode 类
- 3.3.2 将数组处理成二叉树结构并且返回根节点
- 3.3.3 进行搜索
- 3.4 总结提升
- 四:回溯法-皇后问题
- 4.1 概念
- 4.2 画图表示
- 4.3 代码实现
- 4.3.1 实现思路
- 4.3.2 具体代码
- 4.4 总结提升
- 五:贪心法
- 5.1 概念
- 5.2 画图表示
- 5.3 代码实现
- 5.3.1 题目描述
- 5.3.2 java代码
- 5.4 总结提升
- 六:动态规划
- 6.1 概念
- 6.2 画图表示
- 6.3 代码实现
- 6.3.1 实现思路
- 6.3.2 具体代码
- 6.4 总结提升
- 七:动态规划-0/1背包问题
- 7.1 概念
- 7.1.1 例子
- 7.1.2 限定
- 7.2 画图表示
- 7.3 代码实现
- 7.4 总结提升
- 总结&提升
最近正在准备五月份的软件工程师考试,上文我们总结了常用的8中排序算法。本文我们就来盘一盘软考中设计到的其他各种算法,这些算法体现的思想,是我们学习的核心。希望通过此篇文章可以让大家更深刻的理解什么是算法。领会不同算法的精妙之处。
分治法,顾名思义就是分而治之的意思。就是把一个复杂的问题拆分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。
我们使用分支法的思想,在一个有序的数组内,搜索指定的数值。例如: 在下面的数组内搜索值为28的数组
我们的代码实现了一个经典的二分查找算法,使用递归的方式进行查找。以下为详细解释:
- 在 main 方法中定义了一个数组 nums 和一个目标数字 targetNumber,然后调用了 binarySearch 方法进行查找,并输出查找结果。
- binarySearch 方法是一个递归函数,用于在已排序数组 nums 中查找目标数字 targetNumber。函数参数中的 beginIndex 和 endIndex 表示查找区间的起始下标和结束下标,nums 表示给定的已排序数组。
- 首先计算中间位置 middleIndex,如果找到目标数字,返回目标数字的下标 middleIndex。
- 如果目标数字比中间位置的数大,说明目标数字在右半区间,递归调用 binarySearch 方法,将查找区间的起始下标改为 middleIndex,结束下标不变。
- 如果目标数字比中间位置的数小,说明目标数字在左半区间,递归调用 binarySearch 方法,将查找区间的结束下标改为 middleIndex,起始下标不变。
- 如果没有找到目标数字,返回 -1。
该算法的时间复杂度为 O(log n),其中 n 为数组的长度。这是因为每次查找都会将查找区间缩小一半,最多需要查找 log n 次。该算法是一种高效的查找算法,常用于对已排序数组的查找操作。
- 回溯法,可以系统的搜索一个问题的所有解或任一解。
- 回溯法通常涉及到对问题状态的深度优先搜索,在搜索过程中,算法尝试一步步地构建解决方案,每次决策都会将问题状态转移到下一步,并检查当前状态是否满足问题的要求。如果当前状态满足问题要求,则继续向下搜索;如果不满足要求,则回溯到上一个状态,并尝试其他的决策。
-
给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。
-
叶子节点 是指没有子节点的节点。
输入:root = [1,2,3,4,5,6,7,8,9] 输出:[“1->2->4->8”,“1->2->4->9”,“1->2->5”,“1->3->6”,“1->3->7”]
提示:
我们的代码实现将使用深度优先搜索和回溯的方法进行。
- 首先从根节点开始,对二叉树进行深度优先遍历。
- 遍历过程中使用一个字符串构建器 StringBuilder 记录当前路径
- 每当遍历到叶子节点时,将当前路径添加到结果列表中,并回溯到上一层节点。
- 这个了例子里,我们需要将当前节点添加到当前路径中
- 然后递归遍历该节点的左右子树
- 在回溯的过程中,需要将当前节点从当前路径中删除,同时选择其它分支继续搜索,直到找到所有的路径。
- 本问题体现了回溯算法的核心思想,即通过试错的方式搜索问题的解空间。
- 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。
- n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。
可行解示例: 过程构造示例:
宏观: 使用深度搜索的方法,按照先行后列的顺序,查看每一个位置是否满足条件。 微观: 定义二维数组表示棋盘,定义一个变量n表示几个皇后 定义一个方法用来判断当前摆放的皇后是否与之前的皇后冲突(同列、左上方,右上方),冲突返回0;否则,返回1,表示此位置可以放置皇后。 定义一个递归函数,尝试在当前行放置皇后。
通过上述代码,我们可以搜索到皇后的一个可行解。
皇后问题也是回溯法的一种体现。它使用了回溯法提高效率的减枝策略,不符合条件的就不必向下进行递归,大大的提高了算法的效率。相较于上文给出二叉树回溯法的例子,它更加的复杂,体现的是一个二维的搜索,但是其核心思想都是回溯。
总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,它所做出的仅仅是在某种意义上的局部最优解。
- 贪心法体现:Djikstra(迪杰斯特拉)算法,构造最小生成树的Prim(普里姆)算法和Kruskal(克鲁斯卡尔)算法
- 算法目的 将一个大的任务拆分成若干个小的任务逐个解决来完成拆分之前总任务的效果。
- 算法过程
- 把求解的问题分成若干个子问题
- 对每个子问题求解,得到子问题的局部最优解
- 把子问题的解局部最优解合成原来问题的一个解
- 该算法存在的问题
- 不能保证求得的最后解是最佳的
- 只能求满足某些约束条件的可行解的范围
给你一个整数数组 ,请你找出一个具有的连续子数组最大和(子数组最少包含一个元素),返回其最大和。 注意:子数组是数组中的一个连续部分。
在以上代码中,我们使用贪心法的思想,从数组的第一个元素开始遍历,计算当前子数组的和 currentSum 和最大子数组的和 maxSum。在每次遍历过程中,我们用 Math.max(num, currentSum + num) 更新 currentSum 的值,这样可以保证 currentSum 始终是以当前元素结尾的最大子数组的和。同时,我们用 Math.max(maxSum, currentSum) 更新 maxSum 的值,以保证最终得到的 maxSum 是整个数组中的最大子数组和。
-
贪心法是一种求解问题的策略,其核心思想是在每一步选择中都采取当前状态下最优的选择,从而希望最终达到全局最优解。贪心法通常适用于满足「最优子结构」和「贪心选择性质」的问题。
-
总结贪心法的思想可以归纳为以下几点:
-
最优子结构(Optimal Substructure):问题的最优解包含了子问题的最优解。这意味着通过选择当前最优的解,可以将原问题拆分为更小的子问题,并且每个子问题的最优解可以组合成原问题的最优解。
-
贪心选择性质(Greedy Choice Property):在每一步选择中,采取当前最优的选择,即局部最优解,希望通过局部最优解达到全局最优解。这意味着贪心法不会回退或撤销之前的选择,而是根据当前情况做出决策。
-
不可回退(不考虑后效性):贪心法做出的选择一旦确定就不可更改,不会对之前的选择进行修改。它只关注当前状态下的最优选择,并相信通过每一步的最优选择能够达到整体最优。
-
需要注意的是,贪心法并不适用于所有问题,因为某些问题无法通过贪心的方式获得最优解。在使用贪心法时,需要经过严格的推导和证明,以确保其正确性。
-
贪心法的优点是简单、高效,并且通常可以在较短的时间内得到一个近似最优解。然而,其缺点是不能保证一定能够得到全局最优解,因此在某些情况下可能得到次优解或错误的结果。
总而言之,贪心法通过选择当前最优解来逐步构建问题的解决方案,希望通过局部最优解达到全局最优解。它是一种简单而高效的求解问题的策略,但需要仔细分析问题的性质和特点,以确定贪心选择和最优子结构的存在性。
将待求问题划分为若干个子问题,按划分的顺序求解子阶段问题,前一个子问题的解,为后一个子问题的求解提供了有用的信息(最优子结构)。在求解任一子问题时,列出各种可能的局部解,通过决策保留那些有可能达到最优的局部解,丢弃其它局部解。依次解决各个子问题,最后求出原问题的最优解
这里以一个斐波那契数列举例
- 定义一个要求的斐波那契数
- 判断求的斐波那契数是否小于等于1,是的话直接返回求的斐波那契数,否的话,则创建一个数组,用来记录子问题的解
- 初始化第一个斐波那契数值,和第二个斐波那契数值。求第三个斐波那契数值的时候,把前两个下标的值进行相加,得出第三个斐波那契的数值。依次按照这种方式,最终得出需要求的斐波那契数值
动态规划(Dynamic Programming)是一种将复杂问题分解为更小子问题并以递推的方式求解的方法。它通常适用于具有「最优子结构」和「重叠子问题」性质的问题。
简单总结动态规划法的思想可以归纳为以下几点:
-
最优子结构(Optimal Substructure):问题的最优解可以通过子问题的最优解来构建。这意味着原问题的解可以由相关子问题的解组合而成。
-
重叠子问题(O【【微信】】s):在递归求解过程中,许多子问题会被重复计算多次。动态规划利用记忆化或者自底向上的方法,将子问题的解存储起来以避免重复计算,提高效率。
-
状态转移方程(State Transition E【【微信】】):动态规划通过定义状态和状态之间的转移方程来描述问题的求解过程。状态转移方程表示问题的当前状态与前一状态之间的关系,通过状态转移方程来推导出最优解。
-
自底向上的计算顺序:动态规划通常使用自底向上的计算顺序,从最小规模的子问题开始逐步求解,直到推导出原问题的解。这样可以保证所有的子问题在求解时都已经得到解决。
-
动态规划的优点是能够求解复杂问题并得到最优解,避免了重复计算,提高了计算效率。然而,动态规划的缺点是需要较大的空间来存储中间结果,有时会牺牲一定的空间复杂性来换取时间上的优化。
总而言之,动态规划通过将复杂问题分解为更小的子问题并以递推的方式求解,利用最优子结构和重叠子问题的性质,通过状态转移方程来推导最优解。它是一种常用的求解优化问题的方法,能够高效地求解多种问题。
用一个例子来说明0/1背包问题: 现有四个物品,小偷背包总容量为8,怎么样可以偷走价值最多的物品 物品编号:1 2 3 4 物品重量:2 3 4 5 物品价值:3 4 5 8
各种限定条件解决问题:
- 部分背包问题:所有物品是可再分的,即允许将某件物品的一部分(例如 1/3)放入背包;
- 0-1 背包问题:所有物品不可再分,要么整个装入背包,要么放弃,不允许出现“仅选择物品的 1/3 装入背包”的情况;
- 完全背包问题:不对每一件物品的数量做限制,同一件物品可以选择多个装入背包;
动态规划的思想可以用以下步骤来解决01背包问题:
- 定义状态:设dp[i][j]表示在前i个物品中,背包容量为j时的最大总价值。
- 初始化:将dp数组初始化为0,即dp[i][j]=0,其中0≤i≤N,0≤j≤W。
- 状态转移方程:对于第i个物品,有两种选择:放入背包或不放入背包。
- 如果wi > j,即当前物品的重量大于背包容量,无法放入背包,则dp[i][j] = dp[i-1][j],即不放入该物品时的最大价值与前i-1个物品相同。
- 如果wi ≤ j,即当前物品的重量小于等于背包容量,可以选择放入或不放入背包。比较两种情况下的最大价值,取较大值:
- 放入背包:dp[i][j] = dp[i-1][j-wi] + vi,即放入当前物品的价值加上前i-1个物品中容量为j-wi时的最大价值。
- 不放入背包:dp[i][j] = dp[i-1][j],即不放入当前物品时的最大价值。
- 遍历计算:使用双重循环遍历物品和背包容量,根据状态转移方程更新dp数组的值。
- 结果输出:最终的最大总价值为dp[N][W],其中N为物品的个数,W为背包的容量。
通过对算法的学习,利于锻炼我们的逻辑思维,并且指导开发,希望此篇博客可以让大家学会这几种经典的算法,领略其中的思想,应用到实践中。