- 2024-07-25快乐数-快慢指针法
题目描述:个人题解:通过反复调用getNext(n)得到的链是一个隐式的链表。隐式意味着我们没有实际的链表节点和指针,但数据仍然形成链表结构。起始数字是链表的头“节点”,链中的所有其他数字都是节点。next指针是通过调用getNext(n)函数获得。意识到我们实际有个链表,那么这
- 2024-07-15链表引用——约瑟夫问题
约瑟夫问题Josephu问题为:设编号为1,2,...n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列。提示:用一个不带头结点的循环链表来处理Josephu问题:先构成一个有
- 2023-12-18202. 快乐数
题目202.快乐数要求编写一个算法来判断一个数 n 是不是快乐数。「快乐数」 定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为1,也可能是 无限循环 但始终变不到1。如果这个过程 结果为 1,那么这个数就是快乐数
- 2023-09-30随笔-责任链模式
将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。abstractclassHandler{privateHandlernext;publicvoidsetNext(Handlernext){this.next=next;}public
- 2023-06-09#yyds干货盘点# LeetCode程序员面试金典:快乐数
1.简述:编写一个算法来判断一个数n是不是快乐数。「快乐数」 定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为1,也可能是无限循环但始终变不到1。如果这个过程结果为 1,那么这个数就是快乐数。如果n是快乐数就返回t
- 2023-05-30单链表(c++实现)
template<typenameT>classListNode{public:explicitListNode(Tvalue_,ListNode*next_=nullptr):value(value_),next(next_){}TgetValue()const{returnvalue;}ListNode<T>*getNext()const{returnnext;};voidsetNext(ListNo
- 2023-05-23pta_【CPP0038】单向链表模板类
#include<iostream>usingnamespacestd;template<typenameT>classNode{public:Node(Tdata):data(data),next(nullptr){cout<<"NodeConstructorrun"<<endl;}Node(constNode<T>&other)
- 2023-05-22每天打卡一小时 第三十三天
template<typenameT>classNode{public:Node(Tdata):data(data),next(nullptr){cout<<"NodeConstructorrun"<<endl;}Node(constNode<T>&other):data(other.data),next(other.next){}~Node(){}TgetData(){
- 2023-04-08JAVA实现单链表修改和删除数据节点
JAVA实现单链表修改和删除数据节点一、修改单链表中的一个节点①实现思路因为带头节点的链表中头节点的next域不能发生改变(始终指向单链表的头节点),否则将找不到该链表。所以我们需要先找一个辅助节点temp来进行节点代理操作。通过遍历链表,使辅助节点temp后移,找到要修改的节点
- 2023-02-08Power Strings POJ - 2406(kmp最小循环节)
AC代码:#include<iostream>#include<cstring>#include<string>#include<cstdio>#include<algorithm>usingnamespacestd;constintmaxn=1e6+5;strings;intnxt[maxn]
- 2023-02-03数据结构-小孩出圈问题(约瑟夫环问题)
假设有m个小孩,数到n的小孩出列,直到全部出去为止。使用环形链表解决约瑟夫环问题。packagecom.linkedlist;publicclassJosephuLinkeslist{publicstaticvoid
- 2023-01-11双链表
图示: 代码: 1importlombok.Data;23publicclassDoubleLinkedListTest{4publicstaticvoidmain(String[]args){5Doubl
- 2023-01-10单链表
图示:代码:1importlombok.Data;2importjava.util.Stack;34publicclassSingleLinkedListTest{5publicstaticvoidmain(String[]args){
- 2022-11-21Java实现双向循环链表
上一篇文章实现了单向循环链表,双向很简单,在单向循环链表的基础上加一个前驱指针,节点类如下:/***双向链表节点*/publicclassNode{privateintdata;//数据
- 2022-11-194.环形链表和约瑟夫问题
问题引出:单行环形链表代码实现:1.定义一个Childtren实体classChildren{//编号privateintno;//下一个privateChildren
- 2022-11-17[模板]kmp求Next数组
模板#include<iostream>#include<string>usingnamespacestd;voidgetNext(conststring&p,intnext[]){intlen=(int)p.size();next[0]=-1;
- 2022-11-163.双向链表
使用带head头的双向链表实现-水浒英雄排行榜管理的优缺点分析 1.单向链表,查找的方向只能是一个方向,而双向链表可以向前或者向后查找 2.单向项链表不能自我删除,需要
- 2022-11-15day18
【0459.重复的子字符串】classSolution{public:boolrepeatedSubstringPattern(strings){for(inti=0;i<s.size()/2;i++){int
- 2022-10-06六六力扣刷题哈希表之快乐数
题目编写一个算法来判断一个数n是不是快乐数。「快乐数」 定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为1,也可
- 2022-09-28循环链表(约瑟夫环)思路及实现
循环链表单链表的尾节点指向首节点,即可构成循环链表约瑟夫环约瑟夫问题:有N个人围成一圈,每个人都有一个编号,编号由入圈的顺序决定,第一个入圈的人编号为1,最后一个为N
- 2022-09-22约瑟夫问题(二)
代码实现 //根据用户的输入,计算出小孩出圈的顺序 /** * *@paramstartNo *表示从第几个小孩开始数数 *@paramcountNum *