日常练习:lintcode49. 字符大小写排序 Python

Python中sorted()排序与字母大小写的问题 主要介绍了Python中sorted()排序与字母大小写的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 立即下载

题目:

给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。
注意事项:
小写字母或者大写字母他们之间不一定要保持在原始字符串中的相对位置。

样例:

样例
给出"abAcD",一个可能的答案为"acbAD"

刚开始以为要正规排序后来发现其实挺简单的,用冒泡排序解决了。
上代码:

class Solution:
    """
    @param: chars: The letter array you should sort by Case
    @return: nothing
    """
    def sortLetters(self, chars):
        # write your code here
       
        if(not chars):
            return chars
        temp = chars[0]
        for i in range(len(chars)-1):
            for j in range(len(chars)-i-1):
                if(ord(chars[j])<91 and ord(chars[j])>64):
                    if(ord(chars[j+1])<123 and ord(chars[j+1])>96):
                        temp = chars[j]
                        chars[j] = chars[j+1]
                        chars[j+1] = temp

大概这样…小写字母挪到前面就行

ARTIX-7 GTP 3G-SDI 工程构建与调试实战 本文详细介绍了基于ARTIX-7 FPGA和GTP收发器的3G-SDI工程构建与调试实战。从基础概念解析到Vivado工程创建、GTP IP核配置、SDI IP核集成,再到系统集成与时钟域处理,提供了全面的技术指导。文章还分享了调试技巧、常见问题排查方法以及性能验证步骤,帮助开发者快速掌握3G-SDI视频传输技术的实现与优化。 阅读详情

相关推荐

Ansys -PEmag 平面变压器仿真与circuit电路模型验证

ansys 软件集成了电路、磁路、PCB参数提取,结构参数提取等功能仿真,基于内置模块的功能参数的仿真后可以提取出主要关键参数,寄生参数,频域响应参数等。该软件的优势在于能够将所有的仿真参数导出为电路模型文件,可以在自带的模块中仿真也可以导出在其他第三方软件中仿真,比如matlab-simulink文件扥。主要介绍ANSYS插件的使用,对PEmag做了详细使用说明并通过案例得到对用的变压器参数;基于变压器参数再将其磁路模型导入到电路中进行建模仿真,实现PEmag与circuit的联合仿真。

weixin_41609745的博客 3016

python 给字母字符串排序 小写字母在前

使用python默认排序函数的时候,大写字母会排在前面,如果希望小写字母排在前面,可以这样写

yuezixuan1的博客 5088

单视图几何Vanish Point(消失点/灭点)计算方法——Robert_T_Collins(罗伯特·柯林斯)算法

单视图几何Vanish Point(消失点/灭点)计算方法——Robert_T_Collins(罗伯特·柯林斯)算法

beyond951的博客 7333

python写所有大写、小写、大小写、字母

import string # 导入string这个模块 print(string.digits) # 输出包含数字0~9的字符串 print(string.ascii_letters) # 包含所有字母(大写和小写)的字符串 print(string.ascii_lowercase) # 包含所有小写字母的字符串 print(string.ascii_uppercase) # 包含所有...

鹿鸣悠悠 7694

共聚焦显微镜的光源、工作原理与选型

共聚焦显微镜作为科研与工业领域中重要的微观成像工具,凭借光源的精准适配性、光学切片技术的三维成像能力,以及对不同工业场景的定制化适配潜力,为半导体检测、工业部件分析、智能制造升级提供了关键技术支撑。深入理解其光源特性、工作原理与选型逻辑,能帮助工程师与技术人员精准匹配设备与生产需求,既保障微观检测的精度与效率,又为产业优化、技术创新筑牢微观观测的基础。

PhotonixBay的博客 1537

Windows10下部署Heygem进行数字人生成

对于使用Heygem生成数字人,需要注意几个问题: + 需要使用Nvidia的显卡。 + 需要在Windows上进行本地部署。主要原因为客户端是Windows的,客户端对上传的视频写入硬编码的`D:\heygem_data\voice\data`目录,需要在容器上读取这些文件。 + 需要在Windows上部署Docker,将Windows的目录映射到容器中,由容器中的服务进行读取。 + 需要特别注意,一定要有D盘,这个D盘是Windows的D盘,不能是插入的USB设备后产生的D盘。 + 需要下载3个Doc

冀辉的博客 5619

python从键盘输入一个字符串、将小写字母全部_从键盘输入一个字符串,将其中的小写字母全部转换成大写字母...

从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以“!”结束.我写的程序是#include#includevoidmain(){charstr[100];inti;FILE*fp;if((fp=fopen("test.c","w")==NULL)){printf("Cannotopenthefile\n");ex...

weixin_39620578的博客 1万+

【深度解析】信息素养提升实践活动(附:历年获奖作品分析)

全国师生信息素养提升实践活动是由教育部教育技术与资源发展中心(中央电化教育馆)主办,面向全国师生的一项信息化交流展示活动。

m0_74417957的博客 9649

显示所有大写字母python_python 输出所有大小写字母的方法

用一行输出所有大(小)写字母,以及数字,首先要记住该字母所对应的ASCII码,百度一下就可以看到,ASCII可显示字符 (这里只列举数字和字母)二进制十进制十六进制图形0011 0000483000011 0001493110011 0010503220011 0011513330011 0100523440011 0101533550011 0110543660011 0111553770011...

weixin_42109639的博客 3267

《低功耗方法学》翻译——前言

前言

记录所学,分享知识,结识挚友 1208

解析 RABAX during SAPGUI Logon 错误及其解决方案

登录用户关联了初始启动程序,该程序由于未处理的异常导致运行时错误。在 ST22 查看错误的程序名和错误行。修复初始程序代码中的逻辑问题。重新部署修复后的代码。示例代码:防止未处理的异常TRY." 模拟逻辑处理ENDTRY.此代码通过 TRY-CATCH 块捕获潜在错误,避免程序崩溃。是 SAP 系统中常见的运行时错误,其根源可能涉及多个方面,包括用户配置、系统状态、数据库连接和自定义开发等。通过结合 ST22、SM21 等诊断工具,以及完善的代码实践和系统监控,可以有效预防和解决此类问题。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1781

Python学习-字符串排序,排序规则:小写<大写<奇数<偶数

我这里是将偶数的ASCII码值减去了10(这样偶数的ASCII码38,40,42,44,46。奇数的ASCII码49,51,53,55,57)那么,只需要想办法让偶数的ASCII码比奇数的ASCII码小,即偶数-奇数-大写字母-小写字母,再以降序的方式排列即可达到题目要求。P.S.你可以发现其实偶数的ASCII码减去8就能满足需求,但我觉得10比较好看嘿嘿。我们发现ASCII码的顺序是按照数字-大写字母-小写字母的顺序排列的。我们回顾一下题目要求小写字母-大写字母-奇数-偶数。...

weixin_52144789的博客 2236

数据分析案例-电影数据可视化分析

数据介绍数据为2011-2021电影数据可视化分析首先导入本次项目需要的包和数据 数据预处理 可视化

m0_64336780的博客 2万+

lintcode练习-49. 字符大小写排序

描述 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。 小写字母或者大写字母他们之间不一定要保持在原始字符串中的相对位置。 您在真实的面试中是否遇到过这个题?  是 样例 给出"abAcD",一个可能的答案为"acbAD" 挑战 在原地扫描一遍完成 实现代码: class Solution:     """     @param: chars: The let...

云中寻雾的博客 530

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

【一次过】Lintcode 49. 字符大小写排序

给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。 样例 给出"abAcD",一个可能的答案为"acbAD" 挑战 在原地扫描一遍完成 解题思路1: 用p遍历整个字符串,当遇到大写字母时,将此字母移动至末尾,当遇到小写字母则继续考察下一个元素。这里xu需要注意的是这个逻辑有点BUG,当遍历至末尾几个元素时,此时所有大写字母均在此处,会造成死循环移动,所以在每次移动大写...

majichen95的博客 324

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

lintcode-49-字符大小写排序

49-字符大小写排序 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。 注意事项 小写字母或者大写字母他们之间不一定要保持在原始字符串中的相对位置。 样例 给出"abAcD",一个可能的答案为"acbAD" 挑战 在原地扫描一遍完成 标签 LintCode 版权所有 字符串处理 排序 两根指针 思路 定义两个指针low和high,low从左至右遍历字符串,high从右自左遍...

weixin_30602505的博客 190

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

49 字符大小写排序

原题网址:https://www.lintcode.com/problem/sort-letters-by-case/description 描述 给定一个只包含字母的字符串,按照先小写字母后大写字母的顺序进行排序。 小写字母或者大写字母他们之间不一定要保持在原始字符串中的相对位置。 您在真实的面试中是否遇到过这个题...

dgc70876的博客 212

[Lintcode] 49. Sort Letters by Case 分割数组,双指针

49.Sort Letters by Case (题目链接) Given a string which contains only letters. Sort it by lower case first and upper case second. It'sNOTnecessary to keep the original order of lower-case letters and upper case letters. Have you met this question in a...

热爱编程,热爱技术 250

python Lintcode 刷题(一)

按难度或者通过率排序刷题 我的代码如下:class Solution: # @param n: an integer # @return an integer f(n) def fibonacci(self, n): # write your code here a = 0 b = 1 for i in r

GeekLee的博客 2805

LintCode python入门题

补充:省略一些题目,这里我认为还是需要贴的题目才被我贴出来,答案不一,欢迎各位能够各抒己见,鄙人先抛砖引玉。 目录2940 · 字节串和字符串互转2931 · 从文件中读取字典并修改它2930 · 向文件里写入列表2929 · 找到最贵的商品(列表版)2927 · 数字分类2926 · 取出字符串日期中的月份并加一(I)2917 · 两个变量间的逻辑运算2908 · 修改字符串第 k 个字符2420 · 寻找缺少的数字(Python 版)2414 · 打印素数(Python 版)2410 · 删除字典最后一

Muxiu 1078

LintCode题解【Python版】

个人博客:枫之羽 目录 前言 入门题 37. 反转一个3位整数 145. 大小写转换 452. 删除链表中的元素 454. 矩阵面积 463. 整数排序 466. 链表节点计数 479. 数组第二大数 484. 交换数组两个元素 763. 进制转换 632. 二叉树的最大节点 简单题 1. A + B 问题 2. 尾部的零 6. 合并排序数组 II 8. 旋转字...

feng_zhiyu的博客 2755

python字母排序倒置_python 字符串倒置(lintcode)

描述:字符串置换给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个字符串的置换。置换的意思是,通过改变顺序可以使得两个字符串相等。样例:"abc" 为 "cba" 的置换。"abcs" 为 "csba" 的置换。"aabc" 不是 "abcc" 的置换。思路:刚开始以为的倒置是字符串倒置即'abcd'与'dcba',写完代码测试后一看错了并非如此,而是要A,B两个字符串的字母个数完全相...

weixin_39593961的博客 1015

[LintCode]158.两个字符串是变位词(ps:OJ上相同的代码执行时间会差很多吗)

简单的题,一次就AC的感觉真爽。题目判断两个字符串是否可以通过改变字母的顺序变成一样的字符串。 样例 给出 s = “abcd”,t=”dcab”,返回 true. 给出 s = “ab”, t = “ab”, 返回 true. 给出 s = “ab”, t = “ac”, 返回 false。 还有一些额外的想法,关于程序执行时间

康康的博客 537

LintCode 字符串置换 python

描述: 给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个字符串的置换。 置换的意思是,通过改变顺序可以使得两个字符串相等。 样例: "abc" 为 "cba" 的置换。 "aabc" 不是 "abcc" 的置换。 代码: class Solution: """ @param: A: a string @param:

小道的博客 667

lintcode:比较字符串

。。。

sabersly的博客 263

lintcode python— 两个字符串是变位词

问题描述:写出一个函数 anagram(s, t) 判断两个字符串是否可以通过改变字母的顺序变成一样的字符串。 样例 给出 s = "abcd",t="dcab",返回 true. 给出 s = "ab", t = "ab", 返回 true. 给出 s = "ab", t = "ac", 返回 false.class Solution: def anagram(s

SEMPERFI_5407的博客 2297
上一篇: 日常练习:Lintcode60. 搜索插入位置 Python
下一篇: 日常练习:Lintcode:50. 数组剔除元素后的乘积 Python
Cold__Winter
博客等级 码龄9年 16粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值