力扣1290. 二进制链表转整数

Problem: 1290. 二进制链表转整数

文章目录

  • 题目描述
  • 思路
  • 复杂度
  • Code

题目描述

在这里插入图片描述在这里插入图片描述

思路

1.记录一个变量res初始化为0,指针p指向链表头;
2.循环每次res = res * 2 + p -> val;p = p -> next;(充分利用二进制数的特性;其中利用指针先指向一个节点)

复杂度

时间复杂度:

O ( n ) O(n) O(n);其中 n n n为链表的长度

空间复杂度:

O ( n ) O(n) O(n)

Code

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:/*** * @param head The head node of linked list* @return int*/int getDecimalValue(ListNode* head) {ListNode* p = head;int res = 0;while (p != nullptr) {res = res * 2 + p -> val;p = p -> next;}return res;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/703756.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++前言..

1.前言 C主要从三个模块讲起 分别是:语法(包括底层汇编)、面向对象以及项目实战 C语言纯面向过程 而Java纯面向对象 但是C则是一门面向过程和面向对象都较为完善的语言 并且他能做到Java所不能做到的点就是他更能够窥探底层的汇编代码 而Java是一点都不想透露给外…

leetcode初级算法(python)- 字符串

文章目录 1.反转字符串常规算法pythonic 算法2.整数反转数学法字符串法3.字符串中的第一个唯一字符pythonic算法哈希算法4.有效的字母异位词常规算法进阶算法5.最长公共前缀1.反转字符串 输入:[‘h’,‘e’,‘l’,‘l’,‘o’] 输出:[‘o’,‘l’,‘l’,‘e’,‘h’]

LeetCode 第三题: 无重复字符的最长子串

文章目录 题目描述示例 解题思路 - 滑动窗口法Go语言实现 - 滑动窗口法算法分析 解题思路 - 优化的滑动窗口法 题目描述 给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。 示例 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串…

VMware使用虚拟机,开启时报错:无法连接虚拟设备 0:0,因为主机上没有相应的设备。——解决方法

检查虚拟机配置文件并确保物理设备已正确连接。 操作: 选中虚拟机,打开设置,点击CD/DVD。在连接处选择使用ISO镜像文件

.top域名解析超过72小时ping不通

域名作为网络上网站的唯一标识,它可以是可视的文本字符串,也可以是IP地址,它提供了一种方便的方式来访问网站,而不用担心网址的改变。域名可以分为不同的类型,如顶级域名(TLD)、国家域名(ccTLD)、通用域名(gTLD)等。因…

怎样知道员工上班浏览了哪些网页

在数字化时代,员工在工作时间内上网浏览网页已经成为常态。然而,这也为企业带来了信息安全和工作效率的隐患。为了解决这个问题,许多企业开始使用域智盾这样的专业软件来监控员工的上网行为。 一、域智盾软件简介 域智盾是一款功能强大的企业…

操作系统--设备管理

一、设备控制器 我们的电脑设备可以接非常多的输入输出设备,比如键盘、鼠标、显示器、网卡、硬盘、打印机、音响等等,每个设备的用法和功能都不同。为了屏蔽设备之间的差异,每个设备都有一个叫设备控制器(Device Control&#xf…

电子书推荐|IT 基础架构团队的 K8s 管理(含最新性能评测)

越来越多的企业采用 Kubernetes 支持应用的快速开发与交付,Kubernetes 的部署与管理任务也逐渐向 IT 基础架构团队倾斜。尤其是对于习惯了传统虚拟化环境的基础架构工程师,容器环境的管理方式往往会带来诸多困扰: Kubernetes 使用门槛高&…

分布式缓存简介

分布式缓存是一种用于存储和访问大量数据的系统,其数据在多个缓存节点(也称为服务器或实例)之间分布和复制。这种架构的主要目的是提高性能和可扩展性,同时提供数据冗余和高可用性。 以下是分布式缓存的主要特点和优势&#xff1…

期权无风险套利策略[6]—看跌期权价格波动区间套利

看跌期权价格波动区间定义 根据美式看涨和看跌期权的均衡公式,在无现金股利的发放下: (1)美式看跌期权的价格(P)一定不会超过同等特征美式看涨期权的价格 (C),加上执行…

React18源码: Fiber树的初次创建过程图文详解

fiber树构造(初次创建) fiber树构造的2种情况: 1.初次创建 在React应用首次启动时,界面还没有渲染此时并不会进入对比过程,相当于直接构造一棵全新的树 2.对比更新 React应用启动后,界面已经渲染如果再次发…

12.openEuler用户和群组

openEuler OECA认证辅导,标红的文字为学习重点和考点。 如果需要做实验,建议安装麒麟信安、银河麒麟、统信等具有图形化的操作系统,其安装与openeuler基本一致。 1.用户和组管理 用户的基础概念: Linux是一个多用户多任务的操作系统: Linux系统支持多个用户在同一时间…

改善C++程序与设计的55个具体做法——2.尽量以const,enum,inline替换#define

const和#define 这个条款或许改为“宁可以编译器替换预处理器”比较好,因为或许#define不被视为语言的一部分。那正是它的问题所在。当你做出这样的事情: #define ASPECT RATIO 1.653 记号名称ASPECT_RATIO也许从未被编译器看见;也许在编译…

面试经典150题【31-40】

文章目录 面试经典150题【31-40】76.最小覆盖字串36.有效的数独54.螺旋矩阵48.旋转图像73.矩阵置零289.生命游戏383.赎金信205.同构字符串290.单词规律242.有效的字母异位词 面试经典150题【31-40】 76.最小覆盖字串 基本思路很简单,就是先移动右边到合适位置。再移…

SOP、SLA、SOA傻傻分不清?

SOP(Standard Operating Procedure) SOP 是 “Standard Operating Procedure” 的缩写,中文意思是“标准操作流程”。它是组织内部规定的一套标准化的工作流程或操作指南,目的是确保工作或任务以统一、高效、安全的方式完成。SOP…

面对耦合度过高的第三方对接

今天接到一个需求,原型图如下:抖音数据(给的是数据占比),要求根据性别,年龄,类目,地域,消费偏好,客单价筛选后排序。 1、性别给的示例:{ "…

Android 9.0 禁用adb remount功能的实现

1.概述 在9.0的系统rom定制化开发中,在进行某些产品开发中,需要禁用掉adb remount功能,就是不能让系统remount,system分区 vendor分区等 只能有读权限没有写权限,所以接下来看下如何禁用remount功能 2. 禁用adb remount功能的实现的核心类 system/core/adb/remount_servic…

IPV6地址

技术背景:对IPV4做优化,比如地址长度128,简化了报文头部---快 ipv6地址 十六进制,简写前导0忽略,连续的0写成:: IPv6地址类型 1.单播 2.组播---接口有地址后,自动加入到一个组播里 3.任播---允许地址…

Rem 自适应原理与应用

前言 移动端适配有很多方案,这篇文章将根据 rem 自适应的原理进行讲解,接下来跟着作者的思路一起来看看吧! 原理 在搞清楚 rem 适配之前,我们先来了解一下什么是 rem? rem 是一种相对长度单位,它相对于根…

51单片机学习(5)-----蜂鸣器的介绍与使用

前言:感谢您的关注哦,我会持续更新编程相关知识,愿您在这里有所收获。如果有任何问题,欢迎沟通交流!期待与您在学习编程的道路上共同进步。 目录 一. 蜂鸣器的介绍 1.蜂鸣器介绍 2.压电式蜂鸣器 (无源…