1.算法
先是刷了一个星期的算法,根据labuladong老师的框架,现在对bfs相关的题目,可以说能解决个百分之六七十,或者七八十。
下面先展示一下我的框架
static int BFS(Node start , Node target,int n){
Queue<Node> q=new LinkedBlockingQueue<>();
Set<Node> visited=new HashSet<>();
q.offer(start);
visited.add(start);
int step=0;
while (!q.isEmpty()){
int sz=q.size();
for (int i = 0; i < sz; i++) {
Node cur=q.poll();
if (cur.value==target.value){
return step;
}
if (visited.size()==n){
return 0 ;
}
/* 将 cur 的相邻节点加入队列 */
if (cur.pre != null&&!visited.contains(cur.pre)){
q.offer(cur.pre);
visited.add(cur.pre);
}
if (cur.next != null&&!visited.contains(cur.next)){
q.offer(cur.next);
visited.add(cur.next);
}
}
step++;
}
return 0;
}
首先的一个难点是要把图给做出来,我说的图是数据结构,几个节点的之键的关系。
然后灵活的根据条件来加入当前节点的附近节点。
最后就要有出口判断
三步走完之后,bfs就搞定了,虽然可能没法一下把题目的每个点都AC了,但是框架出来了,在想想各种极端情况,在进行优化
2.项目
随后就是与企业的第二次面谈,后面还会有第三次,这次我也只是过去听的,感觉确实不配讲话,老师与企业之间的商务谈判感觉不是我们能插的上话的。
但合作基本上就定下来了,第三次谈完之后,就要开始敲代码了,我应该在这个项目中需要全栈,pc端全部我来做,APP端部分我来做。钱不钱的确实不重要,这次能真真切切的积累了项目经验,对大三找工作有帮助,还想着能进大厂呢。
并且院长答应能让我们院内的课程不想上可以不上,考试也不用考,正和我意,因为我的专业是网络工程,我对网络是真的一点兴趣也提不起来。