当前位置: 首页 > news >正文

网站做com合net的区别模板免费网站建设

网站做com合net的区别,模板免费网站建设,网站怎么换主机,做电影网站用什么软件叫什么名字吗在目前,许多互联网公司的面试已经要求能手撕集合源码,集合源码本身算是源码里比较简单的一部分,但是要在面试极短的10来分钟内快速写出一个简易版的源码还是比较麻烦的,很容易出现各种小问题。所以在平时就要注重这方面的联系。 以…

在目前,许多互联网公司的面试已经要求能手撕集合源码,集合源码本身算是源码里比较简单的一部分,但是要在面试极短的10来分钟内快速写出一个简易版的源码还是比较麻烦的,很容易出现各种小问题。所以在平时就要注重这方面的联系。
以下是我自己写的一个简易双端队列,我没有实现List接口,因为里面要实现的函数方法太多了,所以只是挑了几个核心的代码来写,本质其实就是头插法和尾插法的结合。
代码主要有三个文件,分别是Node节点,Deque类和测试文件。
Node:

package org.example.collection;import lombok.Data;import java.util.HashMap;
import java.util.Map;@Data
public class Node<T> {T var;Node<T> prev;Node<T> next;Node(Node<T> prev,T element, Node<T> next){this.var = element;this.next = next;this.prev = prev;}}

Deque实现文件:

package org.example.collection;public class DequeCode<E>{int size = 0;Node<E> first;Node<E> last;public DequeCode() {this.first = new Node<E>(null,null,null);this.last = new Node<E>(null,null,null);//first和last之间应该建立联系first.next = last;last.prev = first;}public int size() {return size;}public void addFirst(E element){//采用头插法来进行双端的插入Node<E> node = new Node<>(null,element,null);size++;if(first.next==null){first.next = node;node.prev = first;return ;}Node<E> temp = first.next;first.next = node;node.prev = first;node.next = temp;temp.prev = node;}public void addLast(E element){//和头插入相同的思路Node<E> node = new Node<>(null,element,null);Node<E> temp = last.prev;size++;if(last.prev==null){last.prev = node;node.next = last;return ;}last.prev = node;node.next = last;temp.next = node;node.prev = temp;}public void removeFirst() throws Exception {if(size == 0) throw new Exception("出现问题");Node<E> node = first.next;first.next = first.next.next;node.next.prev = first;}public void removeLast() throws Exception {if(size == 0) throw new Exception("出现问题");Node<E> node = last.prev;last.prev = last.prev.prev;node.prev.next = last;}public Node<E> peekFirst(){return first.next;}public Node<E> peekLast(){return last.prev;}
}

最后是测试文件:

package org.example.collection;public class TestDeque {public static void main(String[] args) throws Exception {DequeCode<Integer> deque = new DequeCode<>();deque.addFirst(1);deque.addLast(2);System.out.println(deque.peekFirst().var);System.out.println(deque.peekLast().var);deque.addFirst(3);deque.addLast(4);System.out.println(deque.peekFirst().var);System.out.println(deque.peekLast().var);deque.removeFirst();deque.removeLast();System.out.println(deque.peekFirst().var);System.out.println(deque.peekLast().var);}
}

结果和预期一致
在这里插入图片描述
代码逻辑很简单,但是细节方面仍有很大的提升空间。但是面试时间短,这些代码能在10来分钟无失误写出,想来也是够用了。

http://www.mmbaike.com/news/72449.html

相关文章:

  • 产品经理网站开发需求自助建站的优势
  • 在哪个网站做兼职靠谱重庆seo公司排名
  • 网站建设需要哪些证南昌seo网站管理
  • 网站前端用什么语言抖音关键词推广
  • 这个网站做海外推广seo快速排名软件网站
  • wordpress 获取所有菜单阳山网站seo
  • 深圳家居网站建设公司seo优化服务公司
  • 江苏省建设厅网站 投诉希爱力5mg效果真实经历
  • 北京梵客装饰网站的seo
  • 企业做网站费用知乎关键词排名优化
  • 色情做受网站google关键词分析
  • 如何用asp做视频网站软文写作范例大全
  • 服务器安全检测工具百度seo网站
  • wordpress中文注册插件seo草根博客
  • 淡蓝色网站怎么进行网络推广
  • 苏州网站维护建筑设计网站
  • 能发外链的网站合肥瑶海区房价
  • 做美容美发学校网站公司百度账号申诉中心
  • wordpress 获取评论福州seo结算
  • 学生个人网页设计主题简述seo的基本步骤
  • 十大品牌网官网深圳优化公司高粱seo较
  • 用html做登录网站吉林seo关键词
  • 做ppt的模板的网站有哪些百度热点榜单
  • 软件开发包含网站开发吗广东百度seo
  • 注册域名和建立网站的过程本站3天更换一次域名yw
  • php 外贸商城网站建设推广引流平台app大全
  • 动画设计招聘信息百度seo刷排名软件
  • 典型网站建设实例精讲搜索风云排行榜
  • 福州网站制软文营销方法有哪些
  • 响应式网站怎么做无缝轮播图营销的方法手段有哪些