如何找出一個字串中第一次且只出現一次的字元
要找出一個字串中出現的字元,自然而然我們就會想到在ASCⅡ碼中共有256種字元,通過遍歷可以找出每種字元存在的個數,這就用到了ASCⅡ碼字元與編碼中的一一對映的關係。那麼就還需要知道字串的長度,要找第一次出現且只出現一次的字元,從第一個數開始計數到最後一個數,將所有相同字元存在的個數都儲存起來,若是為1時,那麼就找到這個數了,就可以結束迴圈了!
附上源程式:
#include<stdio.h> #define N 50 int main() { char str[N]; int count[256] = {0}; scanf ("%s",str); int i = 0; int len = 0; // 統計字串長度 for (i=0; i<N; i++) { if (str[i] == '\0') { break; } len++; } /* while (str[i++]) { len++; } */ for (i=0; i<len; i++) { count[str[i]]++; } for (i=0; i<len; i++) { if (count[str[i]] == 1) { printf ("%c\n",str[i]); break; } } return 0; }
相關推薦
python字串面試題:找出一個字串中第一個字母和最後一個字元是第一次重複,中間沒有重複且最長的子串
1.給出任意一個字串,列印一個最長子串字串及其長度,如果有相同長度的子字串,都要一起打印出來,該子字串滿足以下條件, 第一個字母和最後一個字元是第一次重複 這個子字串的中間字母沒有重複 這個子字串是滿足條件裡面的最長的 如: adsasadmasd 中滿足條件的是dmasd im
如何找出一個字串中第一次且只出現一次的字元
要找出一個字串中出現的字元,自然而然我們就會想到在ASCⅡ碼中共有256種字元,通過遍歷可以找出每種字元存在的個數,這就用到了ASCⅡ碼字元與編碼中的一一對映的關係。那麼就還需要知道字串的長
python實現找出一個字串中第一次不重複出現的字元
例:輸入:yellow 輸出:y 輸入:tooth 輸出:h思想:使用字典進行遍歷:def find_str(arr): dic={} for i in range(len(arr)): if arr[i] in
找出一個字串中第一個只出現一次的字元
題目:在字串中找出第一個只出現一次的字元。如輸入 “abaccdeff”,則輸出b。 思路分析: (1)由於題目與字元出現的次數相關,那麼是不是可以統計每個字元在該字串中出現的次數?要達到這個目的,我們需要一個數據容器來存放每個字元出現的次數。在這個容器中可
LeetCode:5. Longest Palindromic Substring(找出一個字串中最大的子迴文串)
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of sis 1000. Example 1: Input
找出一個字串中最長並且不重複的子字串,要求時間複雜度越小越好
題目:找出一個字串中長度最長並且不含重複字元的子字串; 要解決這個問題有多種解法,在這裡我們來實現一種時間複雜度最小的方法,使用了雜湊值 程式碼如下:最終,時間複雜度為O(n),是用空間換時間來實現的。 //最長字元,開始位置的索引 public int startI
js演算法:找出一個字串中出現次數最多的字元!
在其他部落格裡面看到了一種方法: 這個方法很簡單,但是15-20行程式碼對於萌新來說,不是很好理解,因此我給出了以下這個方案,先想辦法統計出所有字母各出現的次數,然後把這些次數push到一個數組裡面,找出最大的那個數(我這裡是通過排序找出的最大數),最大數有了,該數對應的字元不就很容易
Python 實現 找出一個字串中出現次數最多的字元並輸出該字元
'''演算法題二: 找出一個字串中出現次數最多的字正確的解決思路是: 利用collections 工具中的Counter,對列表中元素出現的頻率進行排序。 Counter返回值是一個按元素出現頻率降序排列的Counter物件,它是字典的子類,因此可以使用字典的方法'''fro
找出給定字串中第一個不重複的字元
給定一串字串,找出其中第一個不重複的字元。 如:輸入”abcddcaeb1~soop”,輸出’e’ 方法一 思路: 定義list<char> store和list<char> storeDel,對輸入字串str進行遍歷,對st
尋找一個字串中的最長重複子串(字尾陣列)&找出一個字串中最長不重複子串
一、尋找一個字串中的最長重複子串(字尾陣列) 字尾陣列其實可以看尋找一個字串中的最長重複子串(字尾陣列)作一個由字串s倒數i個字元組成的子串的集合,其中0<i<s.length(),例如 字串strstr的字尾陣列為: {r,tr,str,rstr,trstr,
找出一個字串中重複最多的字元以及出現的次數
package test.com; import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(S
華為上機試題(java)找出一個字串中出現次數最多的字元
Java求字串中出現次數最多的字元,如String Str = "aaabbcddddee";那麼輸出:d 4 ;若String Str = "aaabbcddddeexxxxxx";那麼輸出:x 6 import java.util.*; import java.uti
陣列中有三個數只出現一次,其它的數恰好出現兩次,找出這三個數。
具體的題意如題 當我第一次碰到這類題的時候是宿舍的舍友分享的,當時他說的問題還要簡單一些,具體的題意是"陣列中只有一個數只出現一次,其它的數恰好出現兩次,找出這個數。" 當時我的第一感覺就是要用到快排,因此得出第一種演算法,將陣列進行快排的第一層排序,然後從中間分開,數字
請實現一個函式用來找出字元流中第一個只出現一次的字元。
題目描述 請實現一個函式用來找出字元流中第一個只出現一次的字元。例如,當從字元流中只讀出前兩個字元"go"時,第一個只出現一次的字元是"g"。當從該字元流中讀出前六個字元“google"時,第一個只出現一次的字元是"l"。 輸出描述: 如果當前字元流沒有存在出現一次的字元,返回#字元。
給定一個英文字串,請寫一段程式碼找出這個字串中首先出現三次的那個英文字元(需要區分大小寫)。 輸入描述:
題目描述 給定一個英文字串,請寫一段程式碼找出這個字串中首先出現三次的那個英文字元(需要區分大小寫)。 輸入描述: 輸入資料一個字串,包括字母,數字等。 輸出描述: 輸出首先出現三次的那個英文字元 示例1 輸入 Have you ever gone shopping
JS:一個字串由[a-z]組成,找出第一個只出現一次的字母
var mystr = 'asdasdasdwdascxc'; function fis(str){//97 var len = str.length; var arr = []; f
【c語言】第一個只出現一次的字元題目:在字串中找出第一個只出現一次的字元
// 第一個只出現一次的字元題目:在字串中找出第一個只出現一次的字元。 // 如輸入“abaccdeff”,則輸出’b’。 #include <stdio.h> #include <string.h> char find_one(ch
劍指offer--找出字串中第一個只出現一次的字元(題面已經更新)C++
題目描述: 找出字串中第一個只出現一次的字元 輸入描述: 輸入一個非空字串 輸出描述: 輸出第一個只出現一次的字元,如果不存在輸出-1 示例1 輸入 asdfasdfo 輸出 ö 程式碼實現如下: #include<iostream>
在一個字串中找到第一個只出現一次的字元,並返回它的位置, 如果沒有則返回 -1(需要區分大小寫)
題目:在一個字串(0<=字串長度<=10000,全部由字母組成)中找到第一個只出現一次的字元,並返回它的位置, 如果沒有則返回 -1(需要區分大小寫). 思路:建立資料結構HashMap,可以記錄每個字元對應出現的次數,之後遍歷字串,將對應的值儲存在HashMa
學習筆記 c++ (找出這個字串中首先出現三次的那個英文字元)
/*給定一個英文字串,請寫一段程式碼找出這個字串中首先出現三次的那個英文字元。 輸入描述: 輸入資料一個字串,包括字母,數字等。 輸出描述: 輸出首先出現三次的那個英文字元 示例1 輸入 Have you ever gone shopping and 輸出 e */ #i