LeetCode-python 316.去除重复字母

LeetCode-python 316.去除重复字母,第1张

import random

x=[randomrandint (0,100) for i in range (1000)]

print ("The random list is:\n",x)

xset=set(x)#转换成set,这样可以去除重复数据,后面一句可以大幅减少计算量

counts=[(v,xcount(v)) for v in xset ]

sorted_counts=sorted(counts,key=lambda x:(x[1],x[0]))

print(counts)

print ("The statistical result is:\n",sorted_counts)

不明白可追问。

问题描述的并不准确

要看重复行是连续的还是非连续的

如果是连续的, 可以考虑缓存一行, 然后把后面的行与缓存的行比较, 如果不是,那就得缓存所有不同的行, 每次读一行就要与所有缓存过的行做比较了,伪代码如下:

#coding=utf-8

fin = open("inputtxt", "r")

fout = open("outputtxt","a+")

bufferedline = ""

while(fin and (line = finreadline()) != bufferedline):

    foutwrite(line)

finclose()

foutclose()

如果缓存行不连续的话,伪代码如下:

#coding=utf-8

fin = open("inputtxt",'r')

fout = open('outputtxt','a+')

bufferedlines = []

while(fin and (line = finreadline())):

    i = 0;

    for(i=0;i<len(bufferedlines);++i):

        if(line == bufferedlines[i]):

            break;

    if i == len(bufferedlines):

        bufferedlinesappend(line)

        foutwrite(line)

以上就是关于LeetCode-python 316.去除重复字母全部的内容,包括:LeetCode-python 316.去除重复字母、如何用 Python 实现一个图数据库(Graph Database)、关于python的一个问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10179440.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存