题解 | #每K个一组反转链表#

每K个一组反转链表

https://www.nowcoder.com/practice/a632ec91a4524773b8af8694a51109e7

#include <iostream>
#include <stack>
using namespace std;
struct LinkNode {
    int value;
    LinkNode *next;
    LinkNode(int x) {
        value = x;
        next = NULL;
    }
    LinkNode() {
        next = NULL;
    }
};
LinkNode *head = new LinkNode();
LinkNode *tail = head;
int len = 0;
void add(int x) {
    LinkNode *tmp = new LinkNode(x);
    tail->next = tmp;
    tail = tail->next;
    len++;
}
int main() {
    int x;
    while (cin >> x) {
        add(x);
        if (cin.get() == '\n') break;
    }
    int k;
    cin >> k;
    stack<int>s;
    for (int i = 0; i < len / k; i++) {
        for (int j = 0; j < k; j++) {
            s.push(head->next->value);
            head = head->next;
        }
        while (!s.empty()) {
            cout << s.top() << " ";
            s.pop();
        }
    }
    while (head->next) {
        cout << head->next->value<<" ";
        head = head->next;
    }

}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

Java抽象带篮子:难蚌,点进图片上面就是我的大头😆
点赞 评论 收藏
分享
寿命齿轮:实习就一段还拉了,项目一看就不是手搓,学历也拉了,技术栈看着倒是挺好,就是不知道面试表现能咋样。 不过现在才大三,争取搞两端大厂实习,或者一个纯个人项目+一段大厂,感觉秋招还是未来可期。
投递美团等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务