AI在结构力学中的创新应用与技术实现
2026/10/30 5:26:39
跨年快乐,元旦快乐!
1290. 二进制链表转整数
给你一个单链表的引用结点head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。
请你返回该链表所表示数字的十进制值。
最高位在链表的头部。
示例 1:
输入:head = [1,0,1]输出:5解释:二进制数 (101) 转化为十进制数 (5)
示例 2:
输入:head = [0]输出:0
提示:
30。0就是1。完成一下连胜打卡,主要是为了熟悉一下c++的语法,有关于链表的。
这个问题的核心逻辑很简单:
result为 0。result就是最终的十进制值。class Solution { public: int getDecimalValue(ListNode* head) { int result = 0; // 存储最终的十进制结果 ListNode* current = head; // 遍历指针 // 遍历链表的所有节点 while (current != nullptr) { // 核心计算逻辑:左移一位(乘以2) + 当前节点值 result = result * 2 + current->val; // 也可以写成位运算形式:result = (result << 1) | current->val; current = current->next; // 移动到下一个节点 } return result; } };2025,再见!2026,你好!