Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #5) Vi invito a provare a risolvere il problema discusso alla fine della lezione di giovedì: data una lista di interi, determinare #quanti valori diversi contiene.
- def checkRootList(rootList):
- #@param rootList: list,
- #@return integer;
- count = 0
- appList = [1]
- appList[0] = rootList[0]
- for i in range(1, len(rootList)):
- if appList[0] != rootList[i] and checkAppList(rootList[i], appList):
- count += 1
- appList.append(rootList[i])
- if count != 0: #Il contatore deve essere inizializzato a 0, poichè se tutti i numeri della lista risultano essere uguali, il
- #il contatore restituirà 0 (0 elementi uguali tra loro)
- #Se invece esistono numeri diversi nella lista, al valore del contatore va sommato uno. Se la lista fosse composta
- #per esempio da 3 numeri diversi tra loro, alla fine dell'esecuzione del ciclo for il valore del contatore sarebbe
- #uguale a 2 (cosa sbagliata in quanto, appunto, il contatore viene inizializzato a 0).
- count += 1
- return count
- def checkAppList(item, app):
- #@param item: elemento della lista;
- #@param app: list;
- #@return bool;
- if len(app) != 1:
- for j in range(1, len(app)):
- if app[j] == item:
- return False
- return True
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement