2016-season3

校招总算告一段落了,从七月底开始关注内推,到10月底把自己的卖身契寄出去,总算是有了个比较满意的结果了~

简单经过就是:内推A(1)T(2)B(3)W(3)轮挂,校招基本目标公司笔试都过,面试除了滴滴岗位不合适挂了,其他的基本都到了终面,BATW可能由于内推也挂了,京东不清楚,最终收获了远景、新美大、小米、携程、七牛的offer。

但拿再多的offer,最终也只能在一家打工~ 但是这段经历确实是走入工作岗位前的一笔不小的财富。

对于后来者,有几个建议:

  1. 尽早确定目标并制定复习计划,尽早复习相关知识;
  2. 内推有利有弊,有把握的同学大可放心去参加内推收割offer,但是如果没准备好,有可能会影响校招的结果;然而我内推的虽然都没通过校招拿到offer,却让我短时间内了解到企业需要的知识点,好让我针对性地复习,快速掌握所需技能;
  3. 笔试很重要,平常注重算法编程能力的训练,校招前再集中刷下选择题,问题就不会太大;
  4. 面试之后一定、一定、一定要及时总结!整理问到的问题,不会的搞懂,说的不好的可以请教下同学,讨论下怎么说会更好;
  5. 求职过程中要及时认清所属阶段,是处于海投期还是笔试期,0 offer或没有什么满意offer的时候,还是有了比较好的在找更好的时候,这有助于调整笔试面试策略;

对于自己,更重要的则是面试过程中,与面试官交流时提到的一些技术,需要有更多的时间去深入学习沉淀,才能使自己的技能树更加完善。对于前端工程师,可能前端入门容易,所以很多人都认为是切图的😂,但是它首先是个程序员,其次才是前端,一些必要的基础知识还是要多去了解,不能把自己局限在一个框里。

最后,对于自己的第三季度的结果,还是挺满意的,震荡上升的潜力股啊哦吼吼吼~(不要脸😂)期间也有很多小伙伴帮忙,也认识了一些可爱的大神,希望以后有机会可以面基~后面要专心写论文啦~

想对自己说:不忘技术初心!

围棋 判断是否需要吃子,吃掉多少

前两天做到的题目。

题目描述

给定一个10*10的棋盘,0代表空,1代表白子,2代表黑子。
双方可以连续下子。
一个上下左右连续的棋子块,其上下左右的空白位置就是它的气,当某次下子使对手的棋子的气为0时,就要吃掉那些气为0的棋子。
有几种情况:

1. 当落子仅使自己的气为0(a),或下到非空白处时(b),输出`2147483647`;
2. 当落子正确且没有吃子时,输出`0`;
3. 当落子将对手的气为0时,输出吃掉的棋子个数,正数为白子,负数为黑子;
4. 当落子使双方气都为0时,只能吃掉对手的棋,输出棋子个数(同3)。

ife-2016s task4笔记

题目要求 传送门

实现灰色元素水平垂直居中,有两个四分之一圆位于其左上角和右下角。

关键实现方法

由于需要在任何情况下都能使元素水平垂直居中,因此考虑将body设置为fixed,然后用绝对定位定位灰色元素,其中的黄色扇形由position: absolute控制使其相对于灰色矩形位于左上角和右下角。

Tips

1、相对(relative)定位元素的默认位置还是被元素自身占用,别的元素是无法占用的。也就是说相对定位元素的位移是相对于元素自身的边缘进行位移。
2、绝对(absolute)定位元素的位置是相对于最近的一个设置为相对 或 绝对定位的祖先元素的。
3、固定(fixed)定位元素相对于浏览器窗口,并且不会随滚动条进行滚动(不兼容IE6)。

判断一棵树是否是另一棵树的子树

昨天做到一道百度的笔试题,感觉对深搜的理解很有帮助,记录一下。

题目描述

给定两个子树,树节点的数值唯一,问第二棵树是否是第一棵树的子树。是就返回1,否则-1。
给定树节点的定义为:

1
2
3
4
5
6
7
8
9
10
11
struct tnode
{
int value;
tnode* left;
tnode* right;
tnode(int v) { //这个构造函数是我为了调试时构造节点方便而写的
value = v;
left = NULL;
right = NULL;
}
};

一般推荐问题和搭配问题的异同

现有数据集

三部分:
商品信息 -》 基于内容的、相似度 《- 搭配类目过滤
专家搭配 -》 概率模型(马尔可夫?)专家知识 X
历史记录 -》 同时购买次数-》相关性特征构建

问题角度

一般的推荐问题是: 把物品推荐给人
搭配推荐问题是: 把物品推荐给物品,找搭配

基于协同过滤

  一般的协同过滤,就是原本是直接评价人和物品的关系的,现在通过协同历史评分表现,把对应评分高的物品的相似物品推荐给用户(item-based);或者把物品推荐给评分兴趣相似的用户(user-based)。
  因此,若是用协同过滤,评分rate就是物品对于物品的关系。

  • 第一步,关键在于这个rate的构建,rate就是我所说的搭配度
  • 第二步,对评分矩阵的处理:
    • 稀疏矩阵分解?
    • 用于协同过滤

mysql访问权限控制命令

为了保证安全性,mysql默认都是只允许localhost访问的,但是实际操作中,会需要远程访问。可以用下面的命令:

授权法

1
2
mysql> GRANT ALL PRIVILEGES ON dbname.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
flush PRIVILEGES;

表示将dbname数据库的所有表的权限 授权给 任意ip 以myuser用户名和mypassword密码登录。然后立即刷新,使授权生效。

还有另一种方法是改表法,命令比较多,实际用起来不如授权法方便,这里就不写了~

参考资料

1、解决MySQL不允许从远程访问的方法

ife-2016s task3笔记

题目要求 传送门

实现三栏式布局,要求左右两宽度固定,中间一栏填充父元素宽度

关键实现方法

页面结构主要是由一个wrap包裹住所有模块,内含left、right、middle三个部分,其中left、right的float属性分别为left、right,middle的html代码一定要写在最后。然后固定左右两部分的宽度,设置中间栏的左右margin,差不多就可以完成三栏式的基本布局了。

develop notes

最近在做的一些项目,大多都是第一次接触这么复杂的项目,一路做下来,有一些经验教训,记录在这里~

关于数据库设计

· 键值
作为表中每条记录的唯一标识,即使表述对象本身有唯一标识比如身份证号之类的,也最好有一个随机生成或是时间戳与其他信息组成的字符串作为键值。否则,在处理删除及删除后新建相同id的记录时会产生很麻烦的问题。

关于系统设计

【天池】穿衣搭配-第一赛季

最近阴差阳错地入了天池大数据比赛的坑,第一次参加这种比赛,收获还是不少的~在此记录一下~

麻麻我不会穿衣搭配

最初看到这个题目,第一感觉是好难啊,理解题目理解了好久,那么多数据集,组织形式都不一样,而且还有图像,都不知道如何下手,不知如何把这些数据组织起来。

好在袁老板和君哥跟我进行了初步的探讨,带我稍稍入了下门~让我知道了协同过滤、关联规则挖掘这些算法的存在。然后袁老板的由简入繁的思想一直影响着我整个比赛过程,不然按照我强迫症和懒癌晚期的性子来的话,肯定没法开始就放弃了。

拖了好久,看了好些资料才决定用python来写这个代码,到10月13日才正式开始敲代码来做这道题,而我还没学过python。幸好这个时候找到了姐姐和我玩这道题,于是我们先用搭配套餐划分了测试集和训练集,姐姐给力地完成了线下评测程序。

然后我们就开始各种摸索: