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

建设部机关服务中心网站wordpress手机访问不了

建设部机关服务中心网站,wordpress手机访问不了,家里的电脑怎样做网站赚钱,上海网络科技有限公司排名LeetCode 707. 设计链表 难度#xff1a;middle\color{orange}{middle}middle 题目描述 设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性#xff1a;valvalval 和 nextnextnext。valvalval 是当前节点的值#xff0c;nextnextnext 是指向下…LeetCode 707. 设计链表 难度middle\color{orange}{middle}middle 题目描述 设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性valvalval 和 nextnextnext。valvalval 是当前节点的值nextnextnext 是指向下一个节点的指针/引用。如果要使用双向链表则还需要一个属性 prevprevprev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。 在链表类中实现这些功能 get(index)获取链表中第 indexindexindex 个节点的值。如果索引无效则返回−1-1−1。addAtHead(val)在链表的第一个元素之前添加一个值为 valvalval 的节点。插入后新节点将成为链表的第一个节点。addAtTail(val)将值为 valvalval 的节点追加到链表的最后一个元素。addAtIndex(index,val)在链表中的第 indexindexindex 个节点之前添加值为 valvalval 的节点。如果 indexindexindex 等于链表的长度则该节点将附加到链表的末尾。如果 indexindexindex 大于链表长度则不会插入节点。如果indexindexindex小于0则在头部插入节点。deleteAtIndex(index)如果索引 indexindexindex 有效则删除链表中的第 indexindexindex 个节点。 示例 MyLinkedList linkedList new MyLinkedList(); linkedList.addAtHead(1); linkedList.addAtTail(3); linkedList.addAtIndex(1,2); //链表变为1- 2- 3 linkedList.get(1); //返回2 linkedList.deleteAtIndex(1); //现在链表是1- 3 linkedList.get(1); //返回3提示 0index,val10000 index, val 10000index,val1000请不要使用内置的 LinkedList 库。getgetget, addAtHeadaddAtHeadaddAtHead, addAtTailaddAtTailaddAtTail, addAtIndexaddAtIndexaddAtIndex 和 deleteAtIndexdeleteAtIndexdeleteAtIndex 的操作次数不超过 200020002000。 算法1 (单链表) 实现单向链表即每个节点仅存储本身的值和后继节点。除此之外我们还需要一个哨兵sentinel节点作为头节点和一个 size 参数保存有效节点数。如下图所示。 复杂度分析 时间复杂度O(n)O(n)O(n)初始化消耗 O(1)O(1)O(1)get 消耗 O(index)O(index)O(index)addAtHead 消耗 O(1)O(1)O(1)addAtTail 消耗 O(n)O(n)O(n)其中 n 为链表当前长度。 空间复杂度 : 所有函数的单次调用空间复杂度均为 O(1)O(1)O(1)总体空间复杂度为 O(n)O(n)O(n)。 C 代码 class MyLinkedList { public:struct Node {int val;Node* next;Node(int _val): val(_val), next(NULL) {}}*head;MyLinkedList() {head NULL;}int get(int index) {if (index 0) return -1;auto p head;for (int i 0; i index p; i ) p p-next;if (!p) return -1;return p-val;}void addAtHead(int val) {auto cur new Node(val);cur-next head;head cur;}void addAtTail(int val) {if (!head) head new Node(val);else {auto p head;while (p-next) p p-next;p-next new Node(val); }}void addAtIndex(int index, int val) {if (index 0) addAtHead(val);else {int len 0;for (auto p head; p; p p-next) len ;if (index len) addAtTail(val);else if (index len) {auto p head;for (int i 0; i index - 1; i ) p p-next;auto cur new Node(val);cur-next p-next;p-next cur;} } }void deleteAtIndex(int index) {int len 0;for (auto p head; p; p p-next) len ;if (index 0 index len) {if (index 0) head head-next;else {auto p head;for (int i 0; i index - 1; i ) p p-next;p-next p-next-next;}}} };/*** Your MyLinkedList object will be instantiated and called as such:* MyLinkedList* obj new MyLinkedList();* int param_1 obj-get(index);* obj-addAtHead(val);* obj-addAtTail(val);* obj-addAtIndex(index,val);* obj-deleteAtIndex(index);*/算法2 (双链表) 实现双向链表即每个节点要存储本身的值后继节点和前驱节点。除此之外需要一个哨兵节点作为头节点 head 和一个哨兵节点作为尾节点 tail。仍需要一个 size 参数保存有效节点数。如下图所示。 复杂度分析 时间复杂度O(n)O(n)O(n)初始化消耗 O(1)O(1)O(1)get 消耗 O(index)O(index)O(index)addAtHead 消耗 O(1)O(1)O(1)addAtTail 消耗 O(n)O(n)O(n)其中 n 为链表当前长度。 空间复杂度 : 所有函数的单次调用空间复杂度均为 O(1)O(1)O(1)总体空间复杂度为 O(n)O(n)O(n)。 C 代码 class MyLinkedList { public://双链表struct Node {Node *left, *right;int val;Node(int _val) {val _val;left right NULL;}}*head, *tail;//表示节点的个数int size;//初始化MyLinkedList() {size 0;head new Node(INT_MIN), tail new Node(INT_MAX);head-right tail;tail-left head;}int get(int index) {if (index 0 || index size)return -1;//找到第 index 个节点head是虚拟节点所以 i indexauto p head;for (int i 0; i index; i ) p p-right;return p-val; }void addAtHead(int val) {auto t new Node(val);size ;t-right head-right, head-right-left t;t-left head, head-right t;}void addAtTail(int val) {auto t new Node(val);size ;tail-left-right t, t-left tail-left;t-right tail, tail-left t;}void addAtIndex(int index, int val) {if (index size) return;else if (index size) addAtTail(val);else if (index 0) addAtHead(val);else {auto p head;//在链表中的第 index 个节点之前添加值为 val 的节点所以找到第 index-1 节点在后面插入一个节点for (int i 0; i index; i )p p-right;auto q p-right;size ;auto t new Node(val);t-right q, q-left t;p-right t, t-left p;}} void deleteAtIndex(int index) {if (index 0 || index size) return;auto p head;// p 是虚拟节点p点是要删除的节点for (int i 0; i index; i ) p p-right;size --;p-right-left p-left;p-left-right p-right;delete p;} };/*** Your MyLinkedList object will be instantiated and called as such:* MyLinkedList* obj new MyLinkedList();* int param_1 obj-get(index);* obj-addAtHead(val);* obj-addAtTail(val);* obj-addAtIndex(index,val);* obj-deleteAtIndex(index);*/
http://www.hkea.cn/news/14317654/

相关文章:

  • 班级网站建设开题报告工作设计室网站
  • 购物网站排名2018购物网站建设方案ppt
  • 建设网站坂田腾讯云wordpress
  • wordpress企业网站园艺wordpress模板
  • 怎么做微帮网站宝安中心医院
  • 优秀排版设计网站网站建设欲网站维护
  • 珠海网站开发公司哪家好电子商务网站例
  • 瓜子二手车网站开发温州seo排名优化
  • wordpress建站软件网站 在百度搜索不到
  • 托里县城乡建设局网站菜鸟教程网站
  • 做网站网页兼容性高端建站网站的
  • 如何修改网站备案信息车间管理系统
  • 做公司网站需要准备什么科目国外网站卖货平台
  • 南同网站建设wordpress 平台
  • 网站登记备案查询做推广的网站带宽需要多少合适
  • 网站建设实验报告闵行北京网站建设
  • 中南大学双一流建设网站wordpress做过的大型网站
  • 网站服务器模式合肥网站快速排名提升
  • 单一产品网站如何做seo网站中竖导航栏怎么做
  • 关于学校网站建设的请示做p2p投资理财的网站
  • 河北建设厅官方网站装修公司工装公司
  • 网站开发联系方式公司网站功能性建设有哪些
  • 网站域名年费多少钱百度域名验证网站
  • 洛阳建站哪家好网站建设中源码
  • 什么网站都能进的浏览器网站都是什么软件做的
  • 巧家县城乡建设局网站国外免实名域名
  • 网站项目策划大纲wordpress百度seo优化插件
  • 建站之星多语言花生壳做wordpress
  • 长沙行业网站建设费用标准西安市建设工程交易中心
  • php网站开发实例教程百度私人网页服务器