연결리스트로 표현되는 숫자에 1을 더함
숫자의 연결된 목록 표현은 다음과 같이 제공됩니다. 연결된 목록의 모든 노드는 숫자의 한 자리로 간주됩니다. 노드는 연결된 목록의 첫 번째 요소에 해당 숫자의 가장 중요한 숫자가 포함되고, 연결된 목록의 마지막 요소에 해당 숫자의 최하위 숫자가 포함되도록 숫자를 저장합니다. 예를 들어 숫자 202345는 연결된 목록에서 (2->0->2->3->4->5)로 표시됩니다.
숫자를 나타내는 이 연결 리스트에 1을 더하려면 리스트에서 최하위 비트의 값을 확인해야 합니다. 9보다 작으면 괜찮습니다. 그렇지 않으면 코드가 다음 숫자 등을 변경합니다.
이제 이를 수행하는 방법을 이해하기 위한 예를 살펴보겠습니다. 1999는 (1->9->9 ->9)로 표시되며 1을 추가하면 (2->0->0->0)으로 변경됩니다.
Input:1999 Output:2000
Explanation
주어진 연결 목록이 나타내는 숫자에 1을 더하세요. 이는 다음 단계를 따라야 함을 의미합니다.
- 연결 목록 반전: 연결 목록을 반전해야 합니다. 즉, 마지막을 변경해야 합니다. 첫 번째부터 번호, 첫 번째가 마지막이 됩니다. 예를 들어 1->9->9->9는 9->9->9->1로 변환됩니다.
- 이 역방향 연결 목록의 경우 연결 목록을 순회하여 가장 왼쪽 노드에 1을 추가합니다. 해당 노드의 값이 9와 같으면 캐리는 다음 노드로 전달됩니다. 캐리가 없을 때까지 이 과정을 반복합니다.
- 문자열을 원래 형식으로 복원하고 헤드 노드를 반환하여 문자열을 인쇄합니다.
예
#include <iostream> using namespace std; //n=next node ; d=data ; p= previous node; h=head node; c=current node class Node { public: int d; Node* n; }; Node *newNode(int d) { Node *new_node = new Node; new_node->d = d; new_node->n = NULL; return new_node; } Node *reverse(Node *h) { Node * p = NULL; Node * c = h; Node * n; while (c != NULL) { n = c->n; c->n = p; p = c; c = n; } return p; } Node *addOneUtil(Node *h) { Node* res = h; Node *temp, *p = NULL; int carry = 1, sum; while (h != NULL) { sum = carry + h->d; carry = (sum >= 10)? 1 : 0; sum = sum % 10; h->d = sum; temp = h; h = h->n; } if (carry > 0) temp->n = newNode(carry); return res; } Node* addOne(Node *h) { h = reverse(h); h = addOneUtil(h); return reverse(h); } int main() { Node *h = newNode(1); h->n = newNode(9); h->n->n = newNode(9); h->n->n->n = newNode(9); h = addOne(h); while (h != NULL) { cout << h->d; h = h->n; } cout<<endl; return 0; }
위 내용은 연결리스트로 표현되는 숫자에 1을 더함의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











대기는 iPhone이 충전기에 연결되어 있고 가로(또는 가로) 방향일 때 활성화되는 잠금 화면 모드입니다. 세 가지 화면으로 구성되어 있으며 그 중 하나는 전체 화면 시간으로 표시됩니다. 시계 스타일을 변경하는 방법을 알아보려면 계속 읽어보세요. StandBy의 세 번째 화면에는 수직으로 스와이프할 수 있는 다양한 테마의 시간과 날짜가 표시됩니다. 일부 테마에는 온도나 다음 알람과 같은 추가 정보도 표시됩니다. 시계를 길게 누르면 디지털, 아날로그, 세계, 태양광, 플로팅 등 다양한 테마 간에 전환할 수 있습니다. Float는 사용자 정의 가능한 색상의 큰 거품 숫자로 시간을 표시하고, Solar는 다양한 색상의 태양 플레어 디자인을 갖춘 보다 표준적인 글꼴을 가지며, World는 강조 표시하여 세계를 표시합니다.

Dungeon and Fighter Origins에서 광전사에 포인트를 추가하는 방법은 무엇입니까? 무기 설정, 주의해야 할 사항은 다음과 같습니다. Dungeon and Fighter Origins에서 버서커 속성에 포인트를 추가하는 우선 순위에 대한 개요는 다음과 같습니다. 던전 앤 파이터 오리진스 버서커 속성 포인트 우선: 물리 공격력, 광속성 강화, 물리 치명타 피해량, 물리 속도; 힘; 정신. 2. 버서커는 고정 데미지와 백분율 데미지를 결합한 직업으로 주로 물리공격력과 힘, 독립공격력에 의존합니다. 3. 물리 공격이 솔리드에 영향을 미칩니다.

숫자를 출력으로 표현하는 것은 어떤 언어로든 프로그램을 작성할 때 흥미롭고 중요한 작업입니다. 정수 유형(짧은, 긴 또는 중간 유형의 데이터)의 경우 숫자를 출력으로 표현하는 것이 쉽습니다. 부동 소수점 숫자(float 또는 double 유형)의 경우 때로는 특정 소수 자릿수로 반올림해야 합니다. 예를 들어 52.24568을 소수점 세 자리로 표현하려면 일부 전처리가 필요합니다. 이 기사에서는 반올림을 통해 부동 소수점 숫자를 특정 소수 자릿수로 표현하는 몇 가지 기술을 소개합니다. 다양한 접근 방식 중에서 C와 유사한 형식 문자열을 사용하고, 정밀도 인수를 사용하고, 수학 라이브러리의 round() 함수를 사용하는 것이 중요합니다. 하나씩 살펴보겠습니다. ~와 함께

이 글에서는 2와 10 사이의 어떤 숫자로도 나누어지지 않는 1과 n 사이의 숫자(주어진 숫자)를 찾는 문제에 대해 논의할 것입니다. 몇 가지 예를 통해 이를 이해해 보겠습니다. 입력:num=14Output:3Explanation:나누 수 없는 세 개의 숫자 1,11,13이 있습니다.Input:num=21Output:5Explanation:나누 수 없는 다섯 개의 숫자 1,11,13,17,19가 있습니다. 해결된 경우 간단한 방법입니다.

단일 연결 리스트와 양의 정수 N이 입력으로 제공됩니다. 목표는 재귀를 사용하여 주어진 목록의 끝에서 N번째 노드를 찾는 것입니다. 입력 목록에 노드 a→b→c→d→e→f가 있고 N이 4인 경우 마지막에서 4번째 노드는 c가 됩니다. 먼저 목록의 마지막 노드까지 순회하고 재귀(역추적) 증분 카운트에서 돌아올 때 이동합니다. count가 N과 같으면 현재 노드에 대한 포인터가 결과로 반환됩니다. 이에 대한 다양한 입력 및 출력 시나리오를 살펴보겠습니다. - 입력 - 목록: -1→5→7→12→2→96→33N=3 출력 − 마지막에서 N 번째 노드는 2 입니다. 설명 − 세 번째 노드는 2 입니다. 입력 – 목록: -12→53→8→19→20→96→33N=8 출력 – 노드가 존재하지 않습니다.

WeChat 코너 번호를 복원하는 방법: 1. WeChat을 강제 종료하고 다시 시작합니다. 2. WeChat 캐시를 지웁니다. 3. WeChat 버전 업데이트를 확인합니다. 4. WeChat을 제거하고 다시 설치합니다. 자세한 소개: 1. WeChat을 강제 종료하고 다시 시작하는 것은 WeChat 코너 표시의 비정상적인 수를 해결하는 가장 일반적인 방법입니다. WeChat 인터페이스에서 왼쪽 하단에 있는 "나" 버튼을 클릭한 다음 "설정"을 클릭합니다. " 버튼을 오른쪽 상단에 놓습니다. 설정 인터페이스를 엽니다. 설정 인터페이스에서 "로그아웃"을 선택하여 WeChat에서 로그아웃합니다. 몇 초 후에 WeChat을 다시 시작합니다. 일반적으로 코너 번호는 정상으로 돌아갑니다.

수학에서 5의 나눗셈 법칙은 숫자가 0이나 5로 끝나면 5로 나누어진다는 것입니다. 5의 나눗셈 규칙을 결정하는 또 다른 방법이 있습니다. 나머지가 0이면 5로 나눌 수 있는 숫자를 반환합니다. mod(%) 연산자는 정수 나누기 프로그래밍에 일반적으로 사용됩니다. 예를 들어 보겠습니다. 주어진 숫자는 525이고, 숫자는 5로 끝나며 5로 나누어집니다. 주어진 숫자는 0으로 끝나고 5로 나누어지는 7050입니다. 주어진 숫자는 0과 5로 끝나지 않고 5로도 나누어지지 않는 678입니다. 이번 글에서는 숫자가 5로 나누어지는지에 대한 문제를 풀어보겠습니다. 알고리즘 다음 단계에서는 java.util.* 패키지를 사용하여 기본 데이터 유형의 사용자 입력을 얻습니다. 메인 클래스에서

통화 서클의 상위 10 개 거래 디지털 통화 앱 : Binance, OKX, Gate.io, Bitget, Huobi, Bybit, Kucoin, Mexc, Poloniex, Bitmart. 그 중에서도 통화 서클의 4 가지 주요 거래 앱은 Binance, Okx, Gate.io 및 Bitget입니다. 이는 광범위한 암호 화폐 옵션, 낮은 거래 수수료, 강력한 거래 플랫폼 및 고급 거래 기능을 제공합니다.
