📣 独立日限时特惠: VIP通行证立减$68
楼主: Sabrina_0413
跳转到指定楼层
上一主题 下一主题
收起左侧

今天开始刷题!希望自己可以坚持下去

 
🔗
 楼主| Sabrina_0413 2018-3-10 20:58:43 | 只看该作者
全局:
3月10日:easy:538;543;563;572
最近几天做tree的题感觉好吃力,(๑•̀ㅂ•́)و✧加油!
回复

使用道具 举报

🔗
heymine_ 2018-3-10 22:47:57 | 只看该作者
全局:
请问楼主小白到什么程度。。为什么能在算法和数据结构都没看完的情况下就开始刷题。。。
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-13 15:01:18 | 只看该作者
全局:
这几天总是登不上来,把前几天的补上:
2018/3/11:easy:606;617;637;653;
2018/3/12:easy:669;671;687;medium:94
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-13 15:07:28 | 只看该作者
全局:
heymine_ 发表于 2018-3-10 22:47
请问楼主小白到什么程度。。为什么能在算法和数据结构都没看完的情况下就开始刷题。。。

这个问题问的我。。。不知道怎么回答了。。。
一个原因是男票说:学编程最好的方法就是编程,所以我就开始刷了。。。
另一个原因是我其实应该也没太“白”吧,十来年前本科上课学过C语言和数据结构(其实已经还给老师了),现在编程用的Phython,但算是有点底子的。算法确实没有学过,本来每天是试着听点算法,后来就断了。目前是从刷题过程中,遇见某个算法,就学一学~~~算法和数据结构确实是需要找时间边做题边补一补的。
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-13 15:07:34 | 只看该作者
全局:
heymine_ 发表于 2018-3-10 22:47
请问楼主小白到什么程度。。为什么能在算法和数据结构都没看完的情况下就开始刷题。。。

这个问题问的我。。。不知道怎么回答了。。。
一个原因是男票说:学编程最好的方法就是编程,所以我就开始刷了。。。
另一个原因是我其实应该也没太“白”吧,十来年前本科上课学过C语言和数据结构(其实已经还给老师了),现在编程用的Phython,但算是有点底子的。算法确实没有学过,本来每天是试着听点算法,后来就断了。目前是从刷题过程中,遇见某个算法,就学一学~~~算法和数据结构确实是需要找时间边做题边补一补的。
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-13 16:38:56 | 只看该作者
全局:
heymine_ 发表于 2018-3-10 22:47
请问楼主小白到什么程度。。为什么能在算法和数据结构都没看完的情况下就开始刷题。。。

从这些天的刷题效果来看,我也是比较认同“学编程最好的方法就是编程”的说法。
每一类型的题,因为不熟悉,我是从easy的题开始做的,也会看一些视频简单了解一下,最开始做肯定会觉得吃力,但是做一些之后,就学的差不多了,再做难一些的题。
算法嘛,在刷题的过程中学习效果会更好。--很多时候我是从别人的答案中学习的,如果看答案也吃力,就找一些视频了解一下,这样有针对性的学,并且再加上练习,效果比直接看书要好很多。
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-14 10:24:09 | 只看该作者
全局:
3月13日:medium:95;96;98
总结一下tree的inorder travlering的方法:
1.直接有递归,先left,root,right
def inordertraverling(self root):
     if not root: return None
     self.inordertraverling(root.left)
     print root.val
     self.inordertraverling(root.right)  

2. 定义一个stack=[root]
while stack or root!=None:
       while root!=None:
                stack.append(root)
                root=root.left
       root=stack.pop()
       print root.val
       root=root.right
3. Morris travering的方法;
while root:
       if root.left==none:
          print root.val
          root=root.right
       else:
          pre=root.left
          while pre.right!=None and pre.right!=root:
                  pre=pre.right
          if pre.right==None:
             pre.right=root
         else:
             print root.val
             root=root.right
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-15 10:51:27 | 只看该作者
全局:
3月14日:medium:102;103;105
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-16 12:04:46 | 只看该作者
全局:
3月14日:medium:106
106和105差不多,下面是105的笔记:
105:寻找元素位置:n=inorder.index(preorder[0]),该题中,通过定义hashtable来记录list中的元素和位置,可以提高效率。
该题效率高的两个解决方法:(1)依次遍历preorder中的元素,记录parent节点,并通过该元素与parent在inorder中的位置,来判定他们之间的关系(同时将parent节点放在stack中存储起来)---left、或者是其他stack中的right分支。。。(2) recursion。参数为:原来的list,以及起始点位置---为啥这样效率会很高呢?
其他方法:直接recursion,参数为新的preorder和inorder
回复

使用道具 举报

🔗
 楼主| Sabrina_0413 2018-3-17 08:22:02 | 只看该作者
全局:
3月16:medium:113;114;116
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表