当前位置: 首页 > news >正文

哈尔滨建设局网站怎么自己建立一个网站

哈尔滨建设局网站,怎么自己建立一个网站,做个网站哪里可以做,有帮忙做儿童房设计的网站吗目录 前言: 1.两数相加 2.无重复字符的最长子串 3.整数反转 4.删除链表的倒数第 N 个结点 前言: 今天我又来继续分享最近做的题了,现在开始进入我们快乐的刷题时间吧!(编程语言Python3.0,难度&#xf…

目录

前言:

1.两数相加

2.无重复字符的最长子串

 3.整数反转

4.删除链表的倒数第 N 个结点 


前言:

        今天我又来继续分享最近做的题了,现在开始进入我们快乐的刷题时间吧!(编程语言Python3.0,难度:中等)

1.两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。

请你将两个数相加,并以相同形式返回一个表示和的链表。

你可以假设除了数字 0 之外,这两个数都不会以 0 开头。

 

示例: 代码实现:

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:def addTwoNumbers(self, l1, l2):li1=[]li2=[]p1=l1while p1:li1.append(str(p1.val))p1=p1.nextp2=l2while p2:li2.append(str(p2.val))p2=p2.nextli1=li1[::-1]li2=li2[::-1]a=str(int(''.join(li1))+int(''.join(li2)))[::-1]li3=[]for i in a:li3.append(int(i))l3 = ListNode(li3[0])cur=l3for i in range(1,len(li3)):p=ListNode(li3[i])cur.next=pcur=preturn l3

 解题思路:这道题我们可以去创建两个列表作为题目所给的两个链表的数据储存容器,对此依次去循环两个链表,把里面的数据放入到li1和li2当中,然后按照题目的要求进行倒序,之后就把这两个列表里面的数据整合到一个整数相加,再把得到的结果放入到列表li3当中并且倒序,下面就是去创建一个链表,依次把li3里面的数据存入到链表当中就行了

2.无重复字符的最长子串

给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 

class Solution:def lengthOfLongestSubstring(self, s):""":type s: str:rtype: int"""st = {}i, ans = 0, 0for j in range(len(s)):if s[j] in st:i = max(st[s[j]], i)ans = max(ans, j - i + 1)st[s[j]] = j + 1return ans

解题思路:先创建一个字典作为每个字符的位置数(从1开始)统计,然后对这个字符串进行循环,把每一个字符作为键,然后位置数作为值存入到字典当中,当遇到字典中已又的字符时就说明开始重新重复了,此时要去重新统计不连续最长字符串的个数,此时的i就应该是要和上一个出现的位置和此时的位置进行取最大,同时最长不连续字符串是对上一个的ans和此时(j+1)-i 统计的长度进行取最大。最后遍历完成了之后返回的ans就是最大的不连续字符串长度。

 3.整数反转

给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。

如果反转后整数超过 32 位的有符号整数的范围 [−231,  231 − 1] ,就返回 0。

假设环境不允许存储 64 位整数(有符号或无符号)。

class Solution:def reverse(self, x):if x==0:return 0s=str(x)li=[]fu=[]for i in s:li.append(i)if li[0]=='-':fu.append(li[0])li=li[1:]if li[len(li)-1]=='0':li=li[:len(li)-1]xx=int(''.join(fu+li[::-1]))if xx>2**31-1 or xx<-(2**31):return 0return xx

 解题思路:这类题可以去用分类讨论去解决,如果输入0那么就返回0,把这个数字转换为字符串后放入列表当中然后对这个数字进行判断,如果有负号就把负号给提出来放入到列表fu中,然后对列表li做切片;如果列表li最后一个数字是0的话那么,就把0去掉(同样做切片处理),最后我们只需要把列表fu与li(倒序)拼接到一起就行了,然后判断数字xx是否在要求范围内,最后就输出结果。

4.删除链表的倒数第 N 个结点 

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 

 

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:def removeNthFromEnd(self, head, n):count=0p=headwhile p:count+=1p=p.nextif count==0 or count==1:head=Nonereturn headtarget=count+1-nif target==1:head=head.nextreturn headc=1q=headwhile c+1<target:q=q.nextc+=1q.next=q.next.nextreturn head

 解题思路:首先我们要去统计这个链表有多少个节点记为count,按照题目要求删除掉倒数第n个节点,实际上就是删除掉第count+1-n个节点,下面就要进行分类讨论了,如果要删除掉第一个节点的话,那就让头结点之间往后面移动一位,然后返回就行了,如果要删除第二位节点及其以上的话,那么就要进行循环,找到要被删除的前一个节点,让这个节点指向被删除节点的下一个就行了。最后返回头结点。

 好了,以上就是今天的全部内容了,我们下一期再见!

分享一张壁纸:

http://www.hkea.cn/news/149193/

相关文章:

  • 武汉高端网站建设免费广告网
  • 大理建网站常用于网站推广的营销手段是
  • js怎么做网站跨境电商网站
  • 台州外贸网站建设百度推广费用多少
  • 虚拟机怎么做网站空间培训班管理系统 免费
  • wordpress离线文章发布郑州seo关键词排名优化
  • 龙岗区网站建设中国职业培训在线
  • 南山网站建设外包优化网站
  • 个人怎么做网站推广神起网络游戏推广平台
  • 做网站的关键技术运营推广的方式和渠道有哪些
  • jsp做就业网站网推项目
  • 网站开发的目的和意义重庆seo排名电话
  • 顺义专业建站公司最有效的线上推广方式
  • 大连网站网站搭建制作百度识图 上传图片
  • 给人做网站多少钱黑科技引流推广神器怎么下载
  • 沈阳做网站最好的公司百度快照怎么删除
  • 设置本机外网ip做网站网站免费制作平台
  • 有什么推荐做简历的网站2024的新闻有哪些
  • 申请做网站 论坛版主惠州seo外包服务
  • 网站照片上传不了域名解析ip
  • 胖小七网站建设2022最新国际新闻10条简短
  • wordpress 网站备份厦门seo外包服务
  • 网站建设及推广培训杭州百度快照优化排名
  • 简单手机网站开发软件关键词排名代发
  • visio画网站开发类图注册域名后怎么建网站
  • 道里网站运营培训北京网络营销咨询公司
  • 目前做网站流行的语言seo关键词排名优化哪家好
  • 长沙营销型网站制作费用seo图片优化
  • 学生诚信档案建设网站seo数据分析
  • 北京住房城乡建设厅网站首页1688官网入口